zhanghua1068
2020-07-13 10:41
arrs[preIndex+gap]=arrs[preIndex] preIndex-=gap 这个地方,把preIndex的值赋值给了preIndex+gap后,preIndex+gap本身的值岂不是没了 preIndex-=gap ,这里为何要做减法操作呢
不会丢失的,current记录了当前位置的值,while循环结束后这一段代码会把当前值赋值过去。循环中不是交换,你可以理解为循环把所有比当前值大的都后移了一位,循环结束后这一段代码会把空出来的位置赋值过去
Java数据结构与排序算法快速入门
2667 学习 · 11 问题
相似问题