发布网友 发布时间:2022-04-23 02:06
共1个回答
热心网友 时间:2022-05-22 02:12
直接插入排序(Straight Insertion Sorting)的基本思想是:把n个待排序的元素看成为一个有序表和一个无序表,开始时有序表中只包含一个元素,无序表中包含有n-1个元素,排序过程中每次从无序表中取出第一个元素,将它插入到有序表中的适当位置,使之成为新的有序表,重复n-1次可完成排序过程。把a[i]插入到a[0],a[1],...,a[i-1]之中的具体实施过程为:先把a[i]赋值给变量t,然后将t依次与a[i-1],a[i- 2],...进行比较,将比t大的元素右移一个位置,直到发现某个j(0<=j<=i-1),使得a[j]<=t或j为(-1),把t 赋值给a[j+1].举个例子吧 将 8 4 6 7 2 1 3 从大到小排序就是8 , 4 6 7 2 1 38 4 ,6 7 2 1 38 6 4 , 7 2 1 38 7 6 4 , 2 1 38 7 6 4 2 ,1 38 7 6 4 2 1 ,38 7 6 4 3 2 1 ,“,”号右边是无序数列,左边是有序数列,将右边的数列中的数依次按排序要求插入左边,直到完成