基本方法說明:
在一個有序線性表中插入一個元素,使其依然有序,那遞增有序線性表來說
for example:
x插入a b之間時 應滿足x=a;
根據這個原理我們在搜尋一個連結串列適合插入x節的位置時應該至少知道兩個值,
即連結串列的a節的值和b節的值(只有一個節點的連結串列另當別論。。。。)
那麼 就有這樣的演算法:
已知頭結點h
設 同類型節點 p和q
p=h->next;
q=p;
while(p!=NULL)
{
if(x>=q->data&&xdata)//q->data是資料。。。。x是要插入的數值
node *t=(node*)malloc(sizeof(node));//新建一個節點t
t->data=x;
t->next=q->next;
q->next=t;
}
else
p=p->next;
基本方法說明:
在一個有序線性表中插入一個元素,使其依然有序,那遞增有序線性表來說
for example:
x插入a b之間時 應滿足x=a;
根據這個原理我們在搜尋一個連結串列適合插入x節的位置時應該至少知道兩個值,
即連結串列的a節的值和b節的值(只有一個節點的連結串列另當別論。。。。)
那麼 就有這樣的演算法:
已知頭結點h
設 同類型節點 p和q
p=h->next;
q=p;
while(p!=NULL)
{
if(x>=q->data&&xdata)//q->data是資料。。。。x是要插入的數值
{
node *t=(node*)malloc(sizeof(node));//新建一個節點t
t->data=x;
t->next=q->next;
q->next=t;
}
else
{
q=p;
p=p->next;
}
}