记一次写插入排序时的错误

记一次写插入排序时的错误

刚开始的源码是这样的


编译没有错误,在运行时抛出错误


数组越界,经过排错,发现是第九行的代码逻辑出错,导致数组下标越界

循环判断时先判断了list[k] > temp,而不是 k >=0,于是,当k的值为-1时(即数组中最小的数要插入到数组头时,即数字0要插入到放到list[0]的位置,此时 i = 9, k = -1),就产生了数组越界问题

修改之后的正确代码



猜你喜欢

转载自blog.csdn.net/godelgnis/article/details/81056652