2.11.c

来自「数据结构习题及答案」· C语言 代码 · 共 28 行

C
28
字号
◆2.11② 设顺序表L中的数据元素递增有序。
试写一算法,将x插入到L的适当位置上,并保
持该表的有序性。

要求实现下列函数:
void InsertOrderList(SqList &L, ElemType x)
/* 在有序的顺序表 L 中保序插入数据元素 x */

顺序表类型定义如下:
typedef struct {
    ElemType *elem;
    int       length;
    int       listsize;
} SqList;

void InsertOrderList(SqList &L, ElemType x)
// 在有序的顺序表 L 中保序插入数据元素 x
{
   int i,j;      
    i=L.length-1;
    while(i>=0&&x<=L.elem[i]) i--;
    for(j=L.length-1;j>=i+1;j--)
       L.elem[j+1]=L.elem[j];
    L.elem[i+1]=x;
    L.length++;   
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?