设顺序表La中的数据元素递增有序。编写一个程序,将元素n插入到顺序表的适当位置上,以保持表的有序。
#include<iostream>
using namespace std;
#define MAXSIZE 100
struct SqList
{
int data[MAXSIZE];
int length;
};
int main()
{
int i, n;
SqList La = { { 1, 3, 4, 7, 11, 18, 29, 47, 76, 123 }, 10 };
cout << "线性表的初始情况为: ";
for (i = 0; i < La.length; i++)
cout << La.data[i] << " ";
cout << endl << "请输入待插入的元素n : ";
cin >> n;
if (La.length == MAXSIZE)
{
cout << "线性表已满,不能插入!" << endl;
return 0;
}
for (i = La.length; i>0 && n < La.data[i - 1]; i--)
La.data[i] = La.data[i - 1];
La.data[i] = n; La.length++;
cout << "插入元素" << n << "后,线性表的情况为: ";
for (i = 0; i < La.length; i++)
cout << La.data[i] << " ";
cout << endl;
return 0;
}