数据结构-插入排序-表插入排序

    xiaoxiao2021-04-13  32

    插入排序:

    ①直接插入排序。

    ②折半插入排序。

    ③2-路插入排序。

    ④表插入排序。←this

    ⑤希尔排序。

    表插入排序,用表的方式进行插入排序操作

    描述过程:将一个记录插入到已排好序的有序表中,

    优点:避免了移动

    时间复杂度:O(n2)

    const int SIZE=10; typedef struct{ int rc;//记录项 int next;//指针项 }SLNode; typedef struct{ SLNode r[SIZE]; //0号单元为表头结点 int length; //链表当前长度 }SLinkListType; //静态链表类型 void Arrange(SLinikListType &SL){ int p = SL.r[0].next; // p指示第一个记录的当前位置 for(int i=1;i<SL.length;++i){ while(p<i) p=SL.r[p].next; q = SL.r[p].next; if(p!=i){ SL.r[p]←→SL.r[i]; SL.r[i].next = p; } p = q; } }//Arrange
    转载请注明原文地址: https://ju.6miu.com/read-668763.html

    最新回复(0)