设顺序表L是一个非递减的有序表,下面的哪个算法,能够将元素x插入L中,并使L仍然有序。
A.
//L是顺序存储结构 void insert(list *L,elemtype x) { int i=1; while(i<=L->length) { if(x>L->data[i])i++; else L->data[i]=x; } }
B.
//L是顺序存储结构 void insert(list *L,elemtype x) { int i=L->length; while(i>=1) { if(x data[i]){L->data[i+1]=L->data[i];--i;} L->data[i]=x; } }
C.
//L是顺序存储结构 void insert(list *L,elemtype x) { int i=L->length; while(i>=1) { if(x data[i]){L->data[i+1]=L->data[i];--i;} else {L->data[i]=x;break;} } L->length+=1; }
D.
//L是顺序存储结构 void insert(list *L,elemtype x) { int i=1; while(i<=L->length) { if(x>L->data[i]){L->data[i+1]=L->data[i];i++;} else {L->data[i]=x;break;} } }