数据结构七大排序及时间与空间复杂度的对比
发布时间
阅读量:
阅读量
1、插入排序
核心原理:以首个元素为起点依次向后遍历,但每次进行比较时采取从后向前的顺序。
操作步骤:保存当前遍历到的元素数值,将其与前方已排序部分的元素进行对比,若发现比当前元素大的数值则将其后移,直至找到比当前元素小的数值位置,并将该数值插入至其后方
void InsertSort(int array[], int size)
{
for (int i = 0; i < size; i++){
int last = array[i];
int j;
for (j = i - 1; j >= 0; j--){
if (array[j] < last){
break;
}
array[j + 1] = array[j];
}
array[j + 1] = last;
}
}
2、希尔排序
主要思想:依据gap = (gap / 3) + 1(初始gap等于数组规模)的分组规则,将序列划分为若干个子序列,每
全部评论 (0)
还没有任何评论哟~
