vps交流

[不限流量] 为什么插入排序比选择和冒泡难理解很多


RT,只是感觉代码十分生硬抽象,不像选择或者冒泡那样简单粗暴:

  1. void insertSort(int* arr,int length){
  2.         int j,P;
  3.         int temp;
  4.         for(int P=1;P<length;P++){
  5.                 temp = arr[P];
  6.                         for (j = P;j>0&&arr[j-1]>temp;j–){
  7.                         arr[j] = arr[j-1];
  8.                 }
  9.                 arr[j] = temp;       
  10. //                showArr(arr,length);
  11.         }
  12. }

复制代码

八神庵 发表于 2022-6-13 16:24
伪代码更SB,严的《数据结构》上动不动就弄个什么哨兵,直接给我劝退。。。 …

lz真理解算法了?
硬看c语言不行,直接硬看汇编[不限流量]  为什么插入排序比选择和冒泡难理解很多

想理解算法,不要看C的代码,看伪代码就可以。
里面的for 循环太绕了

XiaoFaye 发表于 2022-6-13 16:23
想理解算法,不要看C的代码,看伪代码就可以。

伪代码更SB,严的《数据结构》上动不动就弄个什么哨兵,直接给我劝退。。。

可以找自然语言描述看看,学习算法不能一开始就看代码(毕竟每个人实现的方法和细节不一样)
示意图
先理解思想,再去看代码

fatal 发表于 2022-6-13 16:29
lz真理解算法了?
硬看c语言不行,直接硬看汇编

理解是理解,就是使某个部分保持有序,只是这些代码太晦涩了,很难记忆