算法—希尔排序
发布时间:2021-03-18 12:49:51 所属栏目:安全 来源:网络整理
导读:希尔排序 希尔排序,也称递减增量排序算法,是插入排序的一种更高效的改进版本。希尔排序是非稳定排序算法。 希尔排序是基于插入排序的以下两点性质而提出改进方法的: 插入排序在对几乎已经排好序的数据操作时,效率高,即可以达到线性排序的效率 但插入排
希尔排序希尔排序,也称递减增量排序算法,是插入排序的一种更高效的改进版本。希尔排序是非稳定排序算法。 希尔排序是基于插入排序的以下两点性质而提出改进方法的:
过程演示: 1 #include <stdio.h> 2 3 void shell_sort(int arr[],int len) { 4 gap,i,j; 5 temp; 6 for (gap = len >> 1; gap > 0; gap = gap >> 1) 7 for (i = gap; i < len; i++) { 8 temp = arr[i]; 9 for (j = i - gap; j >= 0 && arr[j] > temp; j -= gap) 10 arr[j + gap] = arr[j]; 11 arr[j + gap] =12 } 13 } 14 15 main() { 16 int arr[] = { 22,34,1)">3,1)">32,1)">82,1)">55,1)">89,1)">50,1)">37,1)">5,1)">64,1)">35,1)">9,1)">70 }; 17 int len = (int) sizeof(arr) / sizeof(*arr); 18 i; 19 shell_sort(arr,len); 20 21 for (i = 0; i < len; i++22 printf("%d ",arr[i]); 23 return 0; 24 }shell_sort ? (编辑:西双版纳站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |