//單鏈表的合併
//鍊錶合併
//兩個鍊錶必須是有序的
#define maxsize 5
typedef int elemtype;
typedef struct linklist
linklist;
//建立鍊錶1
linklist *createlist1 ()
return (head);
}//建立鍊錶2
linklist *createlist2 ()
return (head);
}int main()
if(l1->data > l2->data )
if(l1->data == l2->data )
}if(l1->next= null)
lp->next=l2;
else
lp->next=l1;
while(1);
return 0;
}//迴圈鍊錶的條件: p->next=head;
//雙向鍊錶
adt:
typedef struct dullinklist
adp:
//新增乙個結點:假設在p,q中間新增乙個結點add:
dullinklist *add;
add=(dullinklist *)malloc(sizeof(dullinklist));
add.data=data;
p->next=add;
add->next=q;
q->prior=add
add->next=p;
//刪除乙個結點:
p->prior->next=p->next;
p->next->prior=p->prior;
free(p);
//線性表和鍊錶的應用——多項式的加減法
1)線性表表示法:
typedef struct linearlist
多項式的每一項都由級數和係數唯一確定,但是對於某些係數為0的項,會占用記憶體浪費資源
因此使用鍊錶
2)鍊錶表示法
typedef struct linklist
3)多項式相加:兩個鍊錶合併,係數為0的項刪掉
linklist *add(linklist *la,linklist *lb)
if(pa->series > pb->series)
if(pa->series = pb->series)
else
}} if(pa==null)
pc->next=pb ;
else
pc->next=pa ;
return (lc) ;
}
鍊錶實現多項式相加
均已除錯通過,編譯器為dev c 多項式相加程式,用鍊錶實現 係數 coefficient 指數exponent 多項式 multinomial include typedef struct lnode lnode,linklist 建立兩個鍊錶 int main while pr1 next pr...
鍊錶實現多項式相加
演算法attch c,e,d 建立乙個新結點,其係數 coef c 指數exp e 並把它鏈到 d 所指結點之後,返回該結點指標。polypointer attch int c int e polypointer d 演算法 padd 實現兩個多項式 a b 相加 c x a x b x polyp...
鍊錶實現多項式相加
全文參看 這裡寫鏈結內容 一 題目要求 使用鍊錶實現多項式的相加,最終輸出相加的多項式。預設鍊錶的指數為遞增。輸入時依次輸入係數和指數,以0 0 作為結束標誌。比如 多項式a 1 2 x 4 x 4 多項式b 2 2 x 5 x 4 輸入 0 1 2 1 4 4 0 0 2 0 2 1 5 4 0 ...