首页 > 代码库 > 算法001.插入排序
算法001.插入排序
1 #include <iostream>; 2 3 using namespace std; 4 void insertion_sort(int * arr, int length); 5 6 int main() 7 { 8 int arr[] = {2,45,5,8,10,4,9,45,8,36,159,125,134,147,155}; 9 int length = sizeof(arr)/sizeof(int);10 insertion_sort(arr, length);11 for (int i = 0; i< length; i++)12 {13 cout << arr[i] << endl;14 }15 cin.get();16 17 }18 19 void insertion_sort(int * arr, int length)20 {21 int i, j;22 for(i = 1; i < length; i++)23 {24 int temp = arr[i];25 j = i - 1;26 while (j >= 0 && arr[j] > temp)27 {28 arr[j+1] = arr[j];29 j--;30 }31 arr[j+1] = temp;32 33 }34 }
记录下学习算法的过程,原理相信看算法导论会更清楚,文字表达能力太差,也就不说了,附上js的,和c++一样,当作自己的复习
1 var arr = [2, 45, 5, 8, 10, 4, 9, 45, 8, 36, 159, 125, 134, 147, 155]; 2 arr = insertionSort(arr); 3 console.log(arr); 4 function insertionSort(arr) { 5 var i, j, temp; 6 for (i = 1; i < arr.length; i++) { 7 temp = arr[i]; 8 j = i - 1; 9 while (j >= 0 && arr[j] > temp) {10 arr[j + 1] = arr[j];11 j--;12 }13 arr[j+1] = temp14 }15 return arr;16 }
算法001.插入排序
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。