2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩7頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、北京郵電大學(xué)信息與通信工程學(xué)院第 1 頁數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)報(bào)告實(shí)驗(yàn)名稱: 實(shí)驗(yàn)一 ——線性表日 期: 2013 年 10 月 28 日1. 實(shí)驗(yàn)要求實(shí)驗(yàn)?zāi)康?實(shí)驗(yàn)?zāi)康?、 熟悉 C++語言的基本編程方法,掌握集成編譯環(huán)境的調(diào)試方法2、 學(xué)習(xí)指針、模板類、異常處理的使用3、 掌握線性表的操作的實(shí)現(xiàn)方法4、 學(xué)習(xí)使用線性表解決實(shí)際問題的能力實(shí)驗(yàn)內(nèi)容 實(shí)驗(yàn)內(nèi)容利用線性表實(shí)現(xiàn)一個(gè)一元多項(xiàng)式 Polynomialf(x) = a0 + a1x

2、+ a2x2 + a3x3 + … + anxn Polynomial 的結(jié)點(diǎn)結(jié)構(gòu)如下:struct term{float coef; //系數(shù)int expn; //指數(shù)};要求:1、 能夠?qū)崿F(xiàn)一元多項(xiàng)式的輸入和輸出2、 能夠進(jìn)行一元多項(xiàng)式相加3、 能夠進(jìn)行一元多項(xiàng)式相減4、 能夠計(jì)算一元多項(xiàng)式在 x 處的值5、 能夠計(jì)算一元多項(xiàng)式的導(dǎo)數(shù)(選作)6、 能夠進(jìn)行一元多項(xiàng)式相乘(選作)7、 編寫測(cè)試 main()函數(shù)測(cè)試線性表

3、的正確性2. 程序分析考慮到數(shù)據(jù)結(jié)構(gòu)的實(shí)現(xiàn),因?yàn)槎囗?xiàng)式是線性結(jié)構(gòu)因此選擇線性表,而本次實(shí)驗(yàn)中涉及到多項(xiàng)式的加減,要進(jìn)行節(jié)點(diǎn)的添加或者刪除,用順序表顯然不能滿足要求,而且由于不知道多項(xiàng)式的項(xiàng)數(shù),很容易造成空間的浪費(fèi),當(dāng)兩個(gè)多項(xiàng)式指數(shù)相差很遠(yuǎn)時(shí),操作要移動(dòng)很多項(xiàng),步驟很麻煩繁瑣。綜上,我選擇了單鏈表,每個(gè)節(jié)點(diǎn)有三個(gè)部分,分別儲(chǔ)存系數(shù)、指數(shù)、和指針,這樣在計(jì)算加減或者指數(shù)不等時(shí),只需要簡單的摘連加鏈即可,而且不會(huì)造成空間的太多浪費(fèi)。每次利用尾

4、插法將結(jié)點(diǎn)插入基準(zhǔn)多項(xiàng)式。2.1 存儲(chǔ)結(jié)構(gòu)北京郵電大學(xué)信息與通信工程學(xué)院第 3 頁3.5 最后一個(gè)結(jié)點(diǎn)指為空時(shí)間復(fù)雜度 O(n),空間復(fù)雜度 S(n)2、輸出多項(xiàng)式 、輸出多項(xiàng)式自然語言描述:1) 得到鏈表的結(jié)點(diǎn)個(gè)數(shù) n2) 設(shè)置工作指針 f 指向頭結(jié)點(diǎn)后一個(gè)節(jié)點(diǎn)3) 由于第一項(xiàng)前不需要加號(hào),故單獨(dú)輸出第一項(xiàng)(f->coef)x^(f->exp)4) 之后移動(dòng) f 循環(huán)遍歷剩余的節(jié)點(diǎn),逐項(xiàng)輸出+(f->coef)x^(

5、f->exp)偽代碼描述:1.term*f= first->next;2.輸出(f->coef)x^(f->exp)3.循環(huán) n-1 次3.1 f=f->next;3.2 輸出+(f->coef)x^(f->exp)時(shí)間復(fù)雜度 O(n),空間復(fù)雜度 S(1)3、多項(xiàng)式相加 、多項(xiàng)式相加自然語言描述:1) 設(shè)有兩個(gè)多項(xiàng)式鏈表 A 和 B,設(shè)置工作指針 p 和 q 分別指向其第一項(xiàng)2) 若 p-&g

6、t;expexp,則結(jié)點(diǎn) p 保留不變,p 指向 A 鏈表的下一個(gè)結(jié)點(diǎn)繼續(xù)比較。3) 若 p->exp>q->exp,則結(jié)點(diǎn) q 應(yīng)為結(jié)果中的一個(gè)結(jié)點(diǎn),將 q 結(jié)點(diǎn)加入到 p 結(jié)點(diǎn)之前,q結(jié)點(diǎn)指向下一個(gè)位置,繼續(xù)比較。4) 若 p->exp=q->exp,則 p 與 q 所指為同類項(xiàng),則為以下兩種情況:(a) 合并的系數(shù)為 0,則刪除 p 結(jié)點(diǎn)(b) 合并的系數(shù)不為 0,將其重新賦予 p 結(jié)點(diǎn)兩結(jié)點(diǎn)合并后可

7、刪除 q 結(jié)點(diǎn),并將 p、q 分別指向下一個(gè)位置繼續(xù)比較 5) (a)若 p 已指空,q 依然存在,則逐項(xiàng)將 q 復(fù)制至 A 鏈表的最后;(b)若 q 指空,則不需再進(jìn)行操作。6) 當(dāng) p、q 均不存在,運(yùn)算結(jié)束。偽代碼描述1. 初始化工作指針 p 和 q,以及 p 結(jié)點(diǎn)的前驅(qū)結(jié)點(diǎn)指針 p_prior;2. 若 p 和 q 都不為空,則循環(huán)如下操作:2.1 若 p->data.exp data.exp,則 p_prior = p;

8、 p = p->next;2.2 否則,若 p->data.exp > q->data.exp,則:2.2.1 將 q 結(jié)點(diǎn)加入到 A 鏈表 p 結(jié)點(diǎn)之前; 2.2.2 q 指向 B 鏈表下一個(gè)結(jié)點(diǎn);2.3 否則:p->data.coef = p->data.coef + q->data.coef;2.3.1 若 p->data.coef 為 0,刪除 p 結(jié)點(diǎn);2.3.2 p 指向下

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論