国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > JS > 正文

JavaScrip常見的一些算法總結

2024-05-06 16:27:02
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了JavaScrip常見的一些算法總結的相關資料,需要的朋友可以參考下
 

 下面就簡單列舉一下javascript中常見的一些算法,需要的朋友可以做一下參考。當然這些算法不僅僅適用于javascript,同樣也適用于其他語言。

一.線性查找:

比較簡單,屬于入門級的算法

//A為數組,x為要搜索的值function linearSearch(A, x) {for (var index = 0; index < A.length; index++) {if (A[index] == x) {return index;}}return -1;}

二.二分查找:

又稱折半查找,適用于已排好序的線性結構。

//A為已按"升序排列"的數組,x為要查詢的元素//返回目標元素的下標function binarySearch(A, x) {var low = 0, high = A.length - 1;while (low <= high) {var mid = Math.floor((low + high) / 2); //下取整 if (x == A[mid]) {return mid;}if (x < A[mid]) {high = mid - 1;}else {low = mid + 1;}}return -1;}

三.冒泡排序:

//冒泡排序function bubbleSort(A) {for (var i = 0; i < A.length; i++) {var sorted = true;//注意:內循環是倒著來的for (var j = A.length - 1; j > i; j--) {if (A[j] < A[j - 1]) {swap(A, j, j - 1);sorted = false;}}if (sorted) {return;}}}

四.插入排序:

//插入排序//假定當前元素之前的元素已經排好序,先把自己的位置空出來,//然后前面比自己大的元素依次向后移,直到空出一個"坑",//然后把目標元素插入"坑"中function insertSort(A) {for (var index= 1; index< A.length; index++) {var x = A[index];for (var j = index- 1; j >= 0 && A[j] > x; j--) {A[j + 1] = A[j];}if (A[j + 1] != x) {A[j + 1] = x;println(A);}}return A;}

五.字符串反轉:

//字符串反轉(比如:ABC -> CBA)function inverse(s) {var arr = s.split('');var index= 0, j = arr.length - 1;while (index< j) {var t = arr[index];arr[index] = arr[j];arr[j] = t;index++;j--;}return arr.join('');}

以上內容給大家簡單介紹了JavaScrip常見的算法總結,希望本文能夠給大家帶來幫助。



注:相關教程知識閱讀請移步到JavaScript/Ajax教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 鹤岗市| 化隆| 治多县| 澄城县| 武穴市| 二连浩特市| 靖远县| 景洪市| 松阳县| 宣化县| 龙南县| 兰溪市| 昌宁县| 惠州市| 长丰县| 玛沁县| 邯郸市| 厦门市| 宁乡县| 琼海市| 青龙| 博野县| 广德县| 枣阳市| 平阳县| 星子县| 定远县| 通河县| 曲阳县| 加查县| 峨眉山市| 砚山县| 陵水| 苍南县| 石门县| 广德县| 寿阳县| 合作市| 宕昌县| 绥江县| 沅陵县|