第1个回答 2012-11-13
它所做的过程是先移动较大的数据,然后再把移动后空出来的那个插入点 插入这个数
因此不需要临时变量。
因为最开始声明时候那数组肯定要比初始化的数目大,至少大1个,以便来存这个要插入的数
所以这个数组最后就空出来一个位置,这样,依次把前面大的数向后移动一位,注意这个移动是从后面开始的
比如我int a[11]; 总共初始化有10个已排好序的值,并有一个空位,我移动时,先把a[9]赋给
a[10],即 a[10] = a[9]; 这样原来最后的一个数就真的变成数组中最后一个位置的数了
依次下去a[9] = a[8]; 把8号位赋给9号位。。。。这样直到你那个插入点
把插入点空出来了,就可以把那个值插进去了。本回答被网友采纳