设顺序表中的数据元素递增有序,试写一算法,将 x 插入到顺序表的 适当位置,以保持该表的有序性。给出具体代码
时间: 2023-11-03 07:08:41 浏览: 171
关于数据结构的程序
算法步骤如下:
1. 遍历顺序表,找到第一个大于等于 x 的元素位置 i;
2. 将元素 i 及其后面的元素后移一位;
3. 将 x 插入到位置 i。
具体代码如下(假设顺序表为 int 类型):
```c++
void insertElem(int arr[], int& n, int x) {
int i;
for (i = 0; i < n; i++) {
if (arr[i] >= x) {
break;
}
}
for (int j = n - 1; j >= i; j--) {
arr[j + 1] = arr[j];
}
arr[i] = x;
n++;
}
```
其中,n 表示顺序表元素个数,arr[] 表示顺序表数组,x 表示待插入元素。
阅读全文