数据结构-顺序表笔试题1

已知一个顺序表L,其中的元素递增有序排列,设计一个算法,插入一个元素x (x为int型)后保持该顺序表仍然递增有序排列(假设插入操作总能成功)
//已知一个顺序表L,其中的元素递增有序排列,设计一个算法,插入一个元素x (x为int型)后保持该顺序表仍然递增有序排列(假设插入操作总能成功)
void SqList_Insert(int L[], int* n, int x) {
    int i = 0;
    // 找到插入位置
    while (i < *n && L[i] < x) {
        i++;
    }
    // 从后向前移动元素,为x腾位置
    for (int j = *n; j > i; j--) {
        L[j] = L[j - 1];
    }
    // 插入x
    L[i] = x;
    (*n)++;  // 顺序表长度加1
}

posted @ 2025-04-11 16:35  w1888  阅读(14)  评论(0)    收藏  举报