1.在一个非递减有序线性表中,插入一个值为x的元素,使插入后的线性表仍为非递减有序. 分别用向量(顺序存储)和单链表实现
2.写一算法将値为b的结点插在链表中値为a的结点之后,如果値为a的结点不存在,则插在表尾
1.在一个非递减有序线性表中,插入一个值为x的元素,使插入后的线性表仍为非递减有序. 分别用向量(顺序存储)和单链表实现
2.写一算法将値为b的结点插在链表中値为a的结点之后,如果値为a的结点不存在,则插在表尾
向量算法:
status Insert_SqList(SqList &va,int x)
{
if(va.length+1>va.listsize) return error;
va.length++;
for(i=va.length-1;va.elem[i]>x&&i>=0;i--)
va.elem[i+1]=va.elem[i];
va.elem[i+1]=x;
retrun ok;
}
单链表算法:
status Insert_LinkList(LinkList &L)
{
p=L->next;
while(p &&p->data<=x)
{
r=p;
p=p->next;
}
q=(LinkList)malloc(sizeof(LNode));
q->data=x;
q->next=p;
r->next=q;
rerurn ok;
}