有序数组的插入_最小值

有序数组的插入_链表_02

有序数组的插入_跳出循环_03

 

1 bool Insert( List L, ElementType X )
2 {
3 int i = 0;
4 if(L->Last == MAXSIZE-1) //元素已满,无法插入
5 return false;
6
7 for(; i <= L->Last; ++i)
8 {
9 if(X == L->Data[i])
10 return false;
11
12 else if(X < L->Data[i])
13 continue;
14 else //if(X > L->Data[i])
15 {
16 for(int j = L->Last + 1; j >= i+1; --j) //把插入的位置之后的元素全部向后移动一个位置
17 {
18 L->Data[j] = L->Data[j-1];
19 }
20 L->Data[i] = X;
21 ++L->Last;
22 return true;
23 }
24 }
25 L->Data[i] = X; //X为最小值时,跳出循环
26 ++L->Last;
27 return true;
28 }