Loading

顺序表的操作例题

顺序表插入操作

题目:已知一个顺序表L,其中的元素递增有序排列,设计一个算法,插入一个元素x(x为int型)后保持该顺序表仍然递增有序排列(假设插入操作总能成功)。

代码

/*******************************************
 * name     : InsElem
 * function :递增有序排列插入一个元素x
 * argument : @L:顺序表地址
 			  @x:待插入的int型元素
 * retval   : None
 * date     :2024/04/22
 * note     :Note
********************************************/
bool InsElem(*L, int x)
{
    for(int i = last; i > 0; i--){
        //元素x从最后位往前比较,如果x元素小就两两交换
        if(x < L[i]){
            L[i+1] = L[i];
            L[i] = x;
        }else break;
    }
    //判断一下元素x是否最大,最大直接插入最后位
    if(NULL == L[last+1]) L[last+1] = x;
    return true;
}
posted @ 2024-04-22 21:22  子非予  阅读(48)  评论(0)    收藏  举报