插入排序是將陣列分成兩部分,一部分是排好序的,另一部分是待排序的,依次將待排序的元素取出來與排好序的部分一一對比,直到找到適合該元素的位置並新增進去。一般預設陣列左側第乙個元素是排好序的,然後從第二元素開始遍歷,分別左側排好序的部分對比進行插入。
實現**:
function
insertsort
(arr)
// 從陣列的第二個元素開始遍歷
for(
var i =
1; i < arr.length; i++
)else
}// 跳出對比則說明已經找到待排序元素的位置,將待排序元素新增進去
arr[j+1]
= candidate
}// 最後將排序結果返回
return arr
}
測試:
insertsort([
5,3,
6,2,
1,7]
)// [1, 2, 3, 5, 6, 7]
插入排序屬於穩定排序方法 Javascript實現對Json陣列排序
一 適用於數字排序和字元排序 最簡單的一種 var sortby function filed,rev,primer if a b if a b return 1 var obj 數字排序 obj.sort sortby b false,parseint console.log obj 字元排序 o...
插入排序的JavaScript實現
插入排序就好比抓牌,將拿到的牌插入到手上已經排好順序的牌中的合適位置。排序過程如下 1 取陣列第乙個元素作為已排序元素 2 取下乙個元素與已排序元素從後往前比較 3 當該元素大於比較元素,將比較元素往後移動一位。4 直到出現小於或者等於該元素的位置,在其後面插入。js 實現 var insertso...
JavaScript實現插入排序演算法
插入排序是先將陣列中的一部分數進行排序,再將陣列中的還未排序的數與已排序的數逐一進行比較,每一次比較都判斷二者的大小關係,大的數右移,為小的數騰出位置,直到遇到比這個數小的數為止,該數即 插入 到此處左移,接著將下乙個未排序的數與左邊已排好序的數逐一比較,重複這一過程。1 建立乙個待排序的陣列 va...