資料結構 鍊錶,多項式相加

2021-09-18 17:38:51 字數 1092 閱讀 6404

指標真的是蠻重要的,基礎不牢怨不得別人,鍊錶差點給我學自閉,尤其是資料結構演算法這塊

下面分享乙個很簡單的鍊錶應用:多項式相加

ps:多項式錄入還不完善,故只能按指數從小往大挨個順序輸入

。。 水平較差請多諒解,應用基礎 c ,雖然可讀性不高但耐心點初學者應該都能讀懂

/*

1. (面向結構的程式語言)將程式按照功能分塊。

a、 建立多項式. void creatpolyn();

b、 顯示多項式. void diaplayployn();///

c、 加法合併。 void addpolyn();v

*/#include#include//#includetypedef struct nodelink;

link * creatpolyn(); //多項式錄入

void diaplayployn(link *); //多項式顯示

link * addpolyn(link *,link *); //多項式相加

int main()

link * creatpolyn()

return head;

}void diaplayployn(link *p1)

printf("\n");

return ;

}link * addpolyn(link *p1,link *p2)

else if(h2->s2s2)

else if(h2->s2>j2->s2)

while(h2!=null&&j2!=null) //考慮把p2合到p1上

else if(h1->s2s2&&h2->s2>j2->s2)

else if(j2->s2>h2->s2)

}if(h2==null)

else if(j2==null);//因為本來就是把p2合到p1上所以p2遍歷完就正常退出

return p1;

}

效果如圖:

資料結構之多項式相加

問題描述 編寫乙個程式用單鏈表儲存多項式,並實現兩個一元多項式a與b相加的函式。a,b剛開始是無序的,a與b之和按降序排列。例如 多項式a 1.2x 0 2.5x 1 3.2x 3 2.5x 5 多項式b 1.2x 0 2.5x 1 3.2x 3 2.5x 5 5.4x 10 多項式a與b之和 5....

資料結構 1 3 多項式相加

其實這個還是有點問題的,在偶見情況下會列印出0 x,目前無解唔。原理就是借用線性表,然後做運算直接先插入到後面。然後遍歷一下,只要指數相同就合併在前面乙個裡面,後面的歸0 不刪除 列印的時候加乙個判斷是否為0的條件就行了。下面是原始碼 include include using namespace ...

資料結構 鍊錶 多項式加法

問題描述 用單鏈表儲存一元多項式,並實現兩個多項式的加法。可以看出,這種方案適合對某些多項式的處理。但是,在處理一些次數高但項數少的多項式時,存在浪費空間的現象,會有很多閒置的0。可以使用如下定義的單鏈表結構儲存多項式 鍊錶中的每乙個結點是多項式中的一項,結點的資料域包括指數和係數兩部分,由指標域連...