直接插入排序(内部排序 插入排序)

我会带着你远行 2022-05-19 06:41 241阅读 0赞
  1. /*直接插入排序
  2. 1、查找元素在链表中的插入位置
  3. 2、将插入位置后面的元素后移
  4. 3、将元素复制到插入的位置
  5. 肖煜
  6. */
  7. #include <stdio.h>
  8. #include <stdlib.h>
  9. #define N 10
  10. void InsertSort (int A[],int n){
  11. int i,j;
  12. for(i=2;i<n;i++)
  13. if(A[i]<A[i-1]){
  14. A[0] = A[i];
  15. for(j=i-1;A[0]<A[j];--j)
  16. A[j+1] = A[j];
  17. A[j+1] = A[0];
  18. }
  19. }
  20. int main()
  21. {
  22. int m = 0;
  23. int b[N] = {21552536786389};
  24. printf("##################################\n\n");
  25. printf("排序前的数据是:\n21 55 25 36 78 63 89\n");
  26. InsertSort(b, N);
  27. printf("排序后的结果是:\n");
  28. for(m = 0; m < N; m++)
  29. {
  30. printf(" %d ", b[m]);
  31. }
  32. printf("\n\n=============================\n\n");
  33. return 0;
  34. }

发表评论

表情:
评论列表 (有 0 条评论,241人围观)

还没有评论,来说两句吧...

相关阅读

    相关 插入排序(直接插入排序)算法

    算法描述 1. 将数组分为两个区域,排序区域和未排序区域,每一轮从未排序区域中取出第一个元素,插入到排序区域(需保证顺序) 2. 重复以上步骤,直到整个数组有序

    相关 内部排序直接插入排序

    直接插入排序是一种简单的排序方法,具体做法是:在插入第i个记录时,R1、R2…Ri-1已经排好序,这时候将Ri的关键字Ki依次与关键字Ki-1、Ki-2等进行比较,从而找到应该