




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、算法與數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)指導(dǎo)手冊(cè)計(jì)算機(jī)教研室2008.61實(shí)驗(yàn)教學(xué)的目的:通過實(shí)驗(yàn),加深對(duì)算法與數(shù)據(jù)結(jié)構(gòu)基本知識(shí)的理解,掌握數(shù)據(jù)結(jié)構(gòu)的理論和設(shè)計(jì)技術(shù)及其使用,培養(yǎng)學(xué)生數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)、開發(fā)能力。2實(shí)驗(yàn)教學(xué)的要求:學(xué)生每次實(shí)驗(yàn)前必須根據(jù)實(shí)驗(yàn)指導(dǎo)手冊(cè),設(shè)計(jì)出實(shí)驗(yàn)方案(程序和實(shí)驗(yàn)步驟);在實(shí)驗(yàn)過程中要求獨(dú)立進(jìn)行程序調(diào)試和排錯(cuò),必須學(xué)會(huì)使用在線幫助解決實(shí)驗(yàn)中遇到的問題,必須應(yīng)用理論知識(shí)分析問題、解決問題。3實(shí)驗(yàn)內(nèi)容:實(shí)驗(yàn)1:VC6的使用一、實(shí)驗(yàn)?zāi)康睦斫夂驼莆杖绾问褂肰isual C6.0環(huán)境編寫C/C程序。二、實(shí)驗(yàn)環(huán)境裝有Visual C6.0的計(jì)算機(jī)。本次實(shí)驗(yàn)共計(jì)4學(xué)時(shí)。三、實(shí)驗(yàn)內(nèi)容1、熟悉VC6環(huán)境掌握如
2、何創(chuàng)建控制臺(tái)應(yīng)用程序。掌握一些常用快捷鍵,例如編譯F7,運(yùn)行CtrlF5,調(diào)試運(yùn)行F5,單步運(yùn)行F10/F11,設(shè)置斷點(diǎn)F9,格式化代碼AltF8。2、掌握如何編譯程序理解編譯過程中的錯(cuò)誤信息,并掌握如何排錯(cuò)。3、掌握如何調(diào)試程序掌握如何通過設(shè)置斷點(diǎn)來單步調(diào)試程序,如何查看當(dāng)前變量的值。4、實(shí)驗(yàn)題:完成實(shí)驗(yàn)教材的實(shí)驗(yàn)題1.1、1.2、1.3。要求:實(shí)現(xiàn)該實(shí)驗(yàn)結(jié)果。通過該實(shí)驗(yàn)題,熟悉VC6環(huán)境下的程序編寫、編譯、調(diào)試。實(shí)驗(yàn)2:順序表基本運(yùn)算一、實(shí)驗(yàn)?zāi)康模?)掌握順序表的各種基本運(yùn)算的實(shí)現(xiàn)。(2)能夠利用基本運(yùn)算進(jìn)行順序表的操作。二、實(shí)驗(yàn)環(huán)境裝有Visual C6.0的計(jì)算機(jī)。本次實(shí)驗(yàn)共計(jì)2學(xué)時(shí)。
3、三、實(shí)驗(yàn)內(nèi)容1、順序表基本運(yùn)算實(shí)現(xiàn)順序表的各種基本運(yùn)算;并在此基礎(chǔ)上設(shè)計(jì)一個(gè)主程序,完成如下功能:(1) 初始化順序表L(元素類型為char型)(2) 依次采用尾插法插入a, b, c, d, e元素(3) 輸出順序表L(4) 輸出順序表L的長(zhǎng)度(5) 判斷順序表L是否為空(6) 輸出順序表L的第3個(gè)元素(7) 輸出元素a 的位置(8) 在第4個(gè)元素位置上插入f元素(9) 輸出順序表L(10) 刪除順序表L的第3個(gè)元素(11) 輸出順序表(12) 釋放順序表提示:可以參考上課教材、實(shí)驗(yàn)教材的實(shí)驗(yàn)題2.1。2、順序表的應(yīng)用(選做)(1)設(shè)計(jì)通訊錄(也可為其他應(yīng)用)文件的存儲(chǔ)格式和線性表的順序存儲(chǔ)
4、結(jié)構(gòu)(2)設(shè)計(jì)在通訊錄(也可為其他應(yīng)用)中添加、刪除、查找某個(gè)節(jié)點(diǎn)信息程序(3)調(diào)試程序?qū)嶒?yàn)3:?jiǎn)捂湵砘具\(yùn)算一、實(shí)驗(yàn)?zāi)康模?)掌握鏈表的概念;掌握單鏈表的各種基本運(yùn)算的實(shí)現(xiàn)。(2)能夠利用基本運(yùn)算進(jìn)行單鏈表的操作。(3)加深對(duì)鏈?zhǔn)酱鎯?chǔ)數(shù)據(jù)結(jié)構(gòu)的理解,逐步培養(yǎng)解決實(shí)際問題的編程能力。二、實(shí)驗(yàn)環(huán)境裝有Visual C6.0的計(jì)算機(jī)。本次實(shí)驗(yàn)共計(jì)2學(xué)時(shí)。三、實(shí)驗(yàn)內(nèi)容實(shí)現(xiàn)單鏈表的各種基本運(yùn)算;并在此基礎(chǔ)上設(shè)計(jì)一個(gè)主程序,完成如下功能:(1)初始化單鏈表L(2)依次采用尾插法插入a, b, c, d, e元素(3)輸出單鏈表L(4)輸出單鏈表L的長(zhǎng)度(5)判斷單鏈表L是否為空(6)輸出單鏈表L的第3個(gè)
5、元素(7)輸出元素a 的位置(8)在第4個(gè)元素位置上插入f元素(9)輸出單鏈表L(10)刪除單鏈表L的第3個(gè)元素(11)輸出單鏈表L(12)釋放單鏈表L提示:可以參考上課教材、實(shí)驗(yàn)教材的實(shí)驗(yàn)題2.2。實(shí)驗(yàn)4:?jiǎn)捂湵砭C合實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康模?)能夠利用單鏈表的基本運(yùn)算進(jìn)行單鏈表的相關(guān)操作。(2)掌握文件的應(yīng)用(3)加深對(duì)鏈?zhǔn)酱鎯?chǔ)數(shù)據(jù)結(jié)構(gòu)的理解,逐步培養(yǎng)解決實(shí)際問題的編程能力。二、實(shí)驗(yàn)環(huán)境裝有Visual C6.0的計(jì)算機(jī)。本次實(shí)驗(yàn)共計(jì)4學(xué)時(shí)。三、實(shí)驗(yàn)內(nèi)容1、通訊錄設(shè)計(jì)設(shè)計(jì)一個(gè)班級(jí)同學(xué)的通訊錄,要求如下:ü 通訊錄中每個(gè)同學(xué)的信息包含以下內(nèi)容:學(xué)號(hào)(id)、姓名(name)、電話號(hào)碼(te
6、l)。如果需要更多其他信息,請(qǐng)自行添加。ü 程序主菜單包含以下幾個(gè)功能:(1) 添加記錄:通過鍵盤輸入信息,添加一條通訊錄記錄。(2) 刪除記錄:通過鍵盤輸入學(xué)號(hào),刪除該學(xué)號(hào)的記錄。(3) 輸出記錄:輸出通訊錄全部記錄。(4) 按姓名查找:通過鍵盤輸入姓名,輸出該同學(xué)的所有信息。(5) 保存記錄:把通訊錄中所有的記錄保存到文件中。(6) 清空記錄:刪除通訊錄中的全部記錄,并刪除文件。(7) 退出提示:ü 程序啟動(dòng)時(shí)應(yīng)判斷是否存在記錄文件,如果存在,則讀取每條記錄到鏈表中。ü 用戶選擇并完成主菜單某功能后,除了退出程序,應(yīng)該返回主菜單。ü 添加一條記錄時(shí),
7、插入到鏈表的尾部。ü 查找、刪除記錄時(shí),如果該記錄不存在,則應(yīng)該輸出不存在的提示。ü 添加記錄、刪除記錄時(shí)不需要寫文件。ü 保存記錄時(shí),用覆蓋寫文件的方法。(或者先刪除原文件,再保存全部記錄信息)ü 各個(gè)功能模塊寫成函數(shù),由主函數(shù)調(diào)用。選做:ü 主菜單增加一個(gè)排序功能選項(xiàng),可以按照學(xué)號(hào)從小到大進(jìn)行排序。排序方法可以用冒泡排序或者插入排序。實(shí)驗(yàn)5:鏈棧的基本操作一、實(shí)驗(yàn)?zāi)康?)熟悉棧的定義和棧的基本操作。2)掌握鏈?zhǔn)酱鎯?chǔ)棧的基本運(yùn)算。3)加深對(duì)棧數(shù)據(jù)結(jié)構(gòu)的理解,逐步培養(yǎng)解決實(shí)際問題的編程能力。二、實(shí)驗(yàn)環(huán)境裝有Visual C6.0的計(jì)算機(jī)。本次實(shí)
8、驗(yàn)共計(jì)2學(xué)時(shí)。三、實(shí)驗(yàn)內(nèi)容必做內(nèi)容: 鏈棧的基本操作編寫棧的基本操作函數(shù)1 棧類型的定義,數(shù)據(jù)域使用char型typedef char ElemType;typedef struct node ElemType data; struct node *next; LinkStack;2初始化空棧:函數(shù)原型如下: void InitLinkStack( LinkStack * & s)其中函數(shù)參數(shù)為L(zhǎng)inkStack * & 類型,表示指向創(chuàng)建的空棧的指針,并且用引用方式傳入。3. 判斷是否空棧:函數(shù)原型如下:int IsEmptyLinkStack(LinkStack *s )
9、其中函數(shù)參數(shù)為棧指針;返回值為int型,1表示是空棧,0表示不是空棧。4. 入棧:函數(shù)原型如下:void PushLinkStack(LinkStack* &s , ElemType x) 其中函數(shù)參數(shù)s為棧指針,x為入棧的數(shù)據(jù)。 5. 出棧:函數(shù)原型如下:int PopLinkStack (LinkStack* & s, ElemType &x)其中函數(shù)參數(shù)s為棧指針,x為出棧的數(shù)據(jù)的引用;返回值為int型,1表示出棧成功,0表示出棧失敗。6取棧頂元素:(棧保持不變)函數(shù)原型如下:int GetLinkStackTop (LinkStack* s, ElemType
10、&x)其中函數(shù)參數(shù)s為棧指針,x存放棧頂元素值;返回值為int型,1表示成功,0表示失敗。編寫主函數(shù)調(diào)用上述函數(shù)實(shí)現(xiàn)下列操作。1初始化空棧。2. 鍵盤輸入字符,使得輸入的字符依次入棧(結(jié)束符號(hào)自定,例如回車鍵(值為10)或'#') 每插入一個(gè)元素,必須輸出當(dāng)時(shí)的棧頂元素(調(diào)用GetLinkStackTop函數(shù))。 3判斷鏈棧是否為空。輸出判斷結(jié)果。4調(diào)用出棧函數(shù),打印出棧元素的值;反復(fù)此步驟,直至棧為空。5判斷鏈棧是否為空。輸出判斷結(jié)果。6釋放鏈棧。選做內(nèi)容(一):判斷對(duì)稱字符串設(shè)計(jì)一個(gè)算法,調(diào)用棧的基本運(yùn)算,判斷一個(gè)字符串是否為對(duì)稱字符串。若是返回1;否則返回0。例如
11、:“abcba”和“abba”都是對(duì)稱字符串。實(shí)驗(yàn)6:隊(duì)列的基本操作一、實(shí)驗(yàn)?zāi)康?)熟悉隊(duì)列的定義和隊(duì)列的基本操作。2)掌握順序循環(huán)隊(duì)列和鏈?zhǔn)酱鎯?chǔ)隊(duì)列的基本運(yùn)算。3)加深對(duì)隊(duì)列數(shù)據(jù)結(jié)構(gòu)的理解,逐步培養(yǎng)解決實(shí)際問題的編程能力。二、實(shí)驗(yàn)環(huán)境裝有Visual C6.0的計(jì)算機(jī)。本次實(shí)驗(yàn)共計(jì)2學(xué)時(shí)。三、實(shí)驗(yàn)內(nèi)容隊(duì)列的基本操作隊(duì)列的存儲(chǔ)結(jié)構(gòu)從順序循環(huán)隊(duì)列或者鏈隊(duì)任選一種。編寫一個(gè)程序,實(shí)現(xiàn)隊(duì)列的各種基本運(yùn)算,并在此基礎(chǔ)上設(shè)計(jì)一個(gè)主程序,完成如下功能:(1) 初始化隊(duì)列q(2) 判斷q是否非空(3) 依次進(jìn)隊(duì)元素a,b,c(4) 出隊(duì)一個(gè)元素,輸出該元素(5) 輸出隊(duì)列q的元素個(gè)數(shù)(6) 依次進(jìn)隊(duì)列元素d
12、,e,f(7) 輸出隊(duì)列q的元素個(gè)數(shù)(8) 輸出出隊(duì)序列(9) 釋放隊(duì)列實(shí)驗(yàn)7:棧和隊(duì)列綜合實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康模?)能夠利用棧和隊(duì)列的基本運(yùn)算進(jìn)行相關(guān)操作。(2)進(jìn)一步熟悉文件的應(yīng)用(3)加深隊(duì)列和棧的數(shù)據(jù)結(jié)構(gòu)理解,逐步培養(yǎng)解決實(shí)際問題的編程能力。二、實(shí)驗(yàn)環(huán)境裝有Visual C6.0的計(jì)算機(jī)。本次實(shí)驗(yàn)共計(jì)4學(xué)時(shí)。三、實(shí)驗(yàn)內(nèi)容以下兩個(gè)實(shí)驗(yàn)任選一個(gè)。1、 迷宮求解設(shè)計(jì)一個(gè)迷宮求解程序,要求如下:ü 以M × N表示長(zhǎng)方陣表示迷宮,求出一條從入口到出口的通路,或得出沒有通路的結(jié)論。ü 能任意設(shè)定的迷宮ü (選作)如果有通路,列出所有通路提示:ü 以一
13、個(gè)二維數(shù)組來表示迷宮,0和1分別表示迷宮中的通路和障礙,如下圖迷宮數(shù)據(jù)為:1111111111100100010110010001011000011001101110000110001000011010001001101110110111000000011111111111入口位置:1 1出口位置:8 8ü 探索過程可采用如下算法,設(shè)定當(dāng)前位置的初值為入口位置;do 若當(dāng)前位置可通,則將當(dāng)前位置插入棧頂;若該位置是出口位置,則結(jié)束;否則切換當(dāng)前位置的東鄰方塊為新的當(dāng)前位置; 否則, 若棧不空且棧頂位置尚有其他方向未經(jīng)探索,則設(shè)定新的當(dāng)前位置為沿順時(shí)針方向旋轉(zhuǎn)找到的棧頂位置的下一相鄰塊
14、;若棧不空但棧頂位置的四周均不可通,則刪去棧頂位置;/從路徑中刪去該通道塊若棧不空,則重新測(cè)試新的棧頂位置,直至找到一個(gè)可通的相鄰塊出棧至棧空;while (棧不空);2、機(jī)場(chǎng)飛機(jī)起降的過程模擬熟悉隊(duì)列的各種基本運(yùn)算,并在此基礎(chǔ)上設(shè)計(jì)一個(gè)主程序,完成如下功能:ü 模擬一個(gè)機(jī)場(chǎng)飛機(jī)起降的過程ü 機(jī)場(chǎng)僅有一條跑道,要求起飛與降落不能同時(shí)進(jìn)行ü 進(jìn)場(chǎng)飛機(jī)若暫時(shí)沒有跑道可用須在空中盤旋等候ü 離場(chǎng)飛機(jī)若暫時(shí)沒有跑道可用須在地面排隊(duì)等候ü 僅當(dāng)空中無飛機(jī)等待降落時(shí)地面飛機(jī)方可起飛ü 飛機(jī)的申請(qǐng)進(jìn)場(chǎng)、降落、申請(qǐng)離場(chǎng)和起飛分別視為獨(dú)立事件ü
15、; 每個(gè)事件的發(fā)生占用一個(gè)時(shí)間單位。除降落和起飛外,各事件可以同時(shí)發(fā)生提示:ü 設(shè)定一個(gè)待飛隊(duì)列用于存放排隊(duì)等候的航班信息ü 設(shè)定一個(gè)待降落隊(duì)列用于存放等待降落的航班信息ü 飛機(jī)的申請(qǐng)進(jìn)場(chǎng)、降落、申請(qǐng)離場(chǎng)和起飛可以通過航班事先設(shè)定的起飛時(shí)間、飛行時(shí)間長(zhǎng)度或者降落時(shí)間信息來確定,這些信息可以存放在一個(gè)文件中,程序運(yùn)行時(shí)從文件中讀出。ü 航班當(dāng)前狀態(tài)可表示為:起飛,降落,申請(qǐng)進(jìn)場(chǎng),申請(qǐng)離場(chǎng),空閑ü 每個(gè)事件的發(fā)生占用一個(gè)時(shí)間單位可以自己約定,起飛,降落可以設(shè)定為30分鐘實(shí)驗(yàn)8:順序串的基本操作一、實(shí)驗(yàn)?zāi)康?)熟悉串的定義和串的基本操作。2)掌握順序
16、串的基本運(yùn)算。3)加深對(duì)串?dāng)?shù)據(jù)結(jié)構(gòu)的理解,逐步培養(yǎng)解決實(shí)際問題的編程能力。二、實(shí)驗(yàn)環(huán)境裝有Visual C6.0的計(jì)算機(jī)。本次實(shí)驗(yàn)共計(jì)2學(xué)時(shí)。三、實(shí)驗(yàn)內(nèi)容編寫一個(gè)程序,實(shí)現(xiàn)順序串的各種基本運(yùn)算,并在此基礎(chǔ)上設(shè)計(jì)一個(gè)主程序。具體如下:編寫棧的基本操作函數(shù)順序串類型定義如下所示:typedef struct char chMAXSIZE; int len; SeqString;(1)串賦值 Assign(s,t)n 將一個(gè)字符串常量賦給串s,即生成一個(gè)其值等于t的串s(2)串復(fù)制 StrCopy(s,t)n 將串t賦給串s(3)計(jì)算串長(zhǎng)度 StrLength(s)n 返回串s中字符個(gè)數(shù)(4)判斷串
17、相等StrEqual(s,t)n 若兩個(gè)串s與t相等則返回1;否則返回0。(5)串連接 Concat(s,t) n 返回由兩個(gè)串s和t連接在一起形成的新串。(6)求子串 SubStr(s,i,j)n 返回串s中從第i(1iStrLength(s)個(gè)字符開始的、由連續(xù)j個(gè)字符組成的子串。(7)插入InsStr (s,i,t)n 將串t插入到串s的第i(1iStrLength(s)+1)個(gè)字符中,即將t的第一個(gè)字符作為s的第i個(gè)字符,并返回產(chǎn)生的新串(8)串刪除 DelStr (s,i,j)n 從串s中刪去從第i(1iStrLength(s)個(gè)字符開始的長(zhǎng)度為j的子串,并返回產(chǎn)生的新串。(9)串替
18、換 RepStr (s,s1,s2)n 在串s中,將所有出現(xiàn)的子串s1均替換成s2。(10)輸出串DispStr(s)n 輸出串s的所有元素值(11)判斷串是否為空 IsEmpty(s)編寫主函數(shù)調(diào)用上述函數(shù)實(shí)現(xiàn)下列操作:(1) 建立串s=“abcdefghijklmn”,串s1=“xyz”,串t“hijk”(2) 復(fù)制串t到t1,并輸出t1的長(zhǎng)度(3) 在串s的第9個(gè)字符位置插入串s1而產(chǎn)生串s2,并輸出s2(4) 刪除s第2個(gè)字符開始的5個(gè)字符而產(chǎn)生串s3,并輸出s3(5) 將串s第2個(gè)字符開始的3個(gè)字符替換成串s1而產(chǎn)生串s4,并輸出s4(6) 提取串s的第8個(gè)字符開始的4個(gè)字符而產(chǎn)生串
19、s5,并輸出s5(7) 將串s1和串t連接起來而產(chǎn)生串s6,并輸出s6(8) 比較串s1和s5是否相等,輸出結(jié)果實(shí)驗(yàn)9:矩陣的基本操作一、實(shí)驗(yàn)?zāi)康?)熟悉數(shù)組、矩陣的定義和基本操作。2)掌握對(duì)稱矩陣、稀疏矩陣等特殊矩陣的存儲(chǔ)方式和基本運(yùn)算。3)加深對(duì)數(shù)組、矩陣的理解,逐步培養(yǎng)解決實(shí)際問題的編程能力。二、實(shí)驗(yàn)環(huán)境裝有Visual C6.0的計(jì)算機(jī)。本次實(shí)驗(yàn)共計(jì)2學(xué)時(shí)。三、實(shí)驗(yàn)內(nèi)容以下兩個(gè)實(shí)驗(yàn)任選一個(gè)。1、實(shí)現(xiàn)稀疏矩陣的轉(zhuǎn)置、求和假設(shè)m×n的稀疏矩陣用三元組表示,編寫一個(gè)程序?qū)崿F(xiàn)如下功能:(1) 生成如下兩個(gè)稀疏矩陣的三元組a和b,并輸出三元組表示。1 0 3 00 1 0 00 0 1
20、 00 0 1 03 0 0 00 4 0 00 0 1 00 0 0 2提示:程序中可以用int A44和B44二維數(shù)組表示原始矩陣A和B。(2) 輸出a的轉(zhuǎn)置矩陣的三元組表示。(3) 設(shè)cab,輸出c的三元組表示。2、求對(duì)稱矩陣之和、乘積已知A和B為兩個(gè)n×n階的對(duì)稱矩陣,編寫一個(gè)程序?qū)崿F(xiàn):(1) 將其下三角元素存儲(chǔ)在一維數(shù)組a和b中,并輸出。1 1 2 41 2 3 52 3 4 64 5 6 71 1 1 11 1 1 11 1 1 11 1 1 1提示:程序中可以用int A44和B44二維數(shù)組表示原始矩陣A和B。(2) 設(shè)CAB,以矩陣方式輸出C。(3) 設(shè)DA×
21、;B,以矩陣方式輸出D。實(shí)驗(yàn)10:字符串綜合實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康?)熟悉串的定義和串的基本操作。2)加深對(duì)串?dāng)?shù)據(jù)結(jié)構(gòu)的理解,逐步培養(yǎng)解決實(shí)際問題的編程能力。二、實(shí)驗(yàn)環(huán)境裝有Visual C6.0的計(jì)算機(jī)。本次實(shí)驗(yàn)共計(jì)4學(xué)時(shí)。三、實(shí)驗(yàn)內(nèi)容以下兩個(gè)實(shí)驗(yàn)任選一個(gè)。1、凱撒加密算法凱撒密碼(caeser)是羅馬擴(kuò)張時(shí)期朱利斯凱撒(Julius Caesar)創(chuàng)造的,用于加密通過信使傳遞的作戰(zhàn)命令。它將字母表中的字母移動(dòng)一定位置而實(shí)現(xiàn)加密。他的原理很簡(jiǎn)單,說到底就是字母與字母之間的替換。每一個(gè)字母按字母表順序向后移3位,如a加密后變成d,b加密后變成e,····
22、83;·x加密后變成a,y加密后變成b,z加密后變成c。例如:“baidu”用凱撒密碼法加密后字符串變?yōu)椤癳dlgx”。試寫一個(gè)算法,將鍵盤輸入的文本字符串(只包含az的字符)進(jìn)行加密后輸出。另寫一個(gè)算法,將已加密后的字符串解密后輸出。提示:ü 如果有字符變量c加密后則a(c-a3)26ü 采用順序結(jié)構(gòu)存儲(chǔ)串,鍵盤輸入字符串后保存到順序串中;輸出用順序串的輸出函數(shù)。2、求一個(gè)串中出現(xiàn)的第一個(gè)最長(zhǎng)重復(fù)子串采用順序結(jié)構(gòu)存儲(chǔ)串,編寫一個(gè)程序,求串s中出現(xiàn)的第一個(gè)最長(zhǎng)重復(fù)子串的下標(biāo)和長(zhǎng)度。實(shí)驗(yàn)11:遞歸綜合實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康?)熟悉遞歸的定義和遞歸的算法設(shè)計(jì)。2)加深對(duì)遞歸
23、算法的理解,逐步培養(yǎng)解決實(shí)際問題的編程能力。二、實(shí)驗(yàn)環(huán)境裝有Visual C6.0的計(jì)算機(jī)。本次實(shí)驗(yàn)共計(jì)4學(xué)時(shí)。三、實(shí)驗(yàn)內(nèi)容以下兩個(gè)實(shí)驗(yàn)任選一個(gè)。1、求解n皇后問題編寫一個(gè)程序,求解皇后問題:在n×n的方格棋盤上,放置n個(gè)皇后,要求每個(gè)皇后不同行、不同列、不同對(duì)角線。要求:使用遞歸算法求解;皇后的個(gè)數(shù)n由用戶輸入,其值不能超過20。2、求解漢諾塔問題設(shè)有3個(gè)分別命名為X,Y和Z的塔座,在塔座X上有n個(gè)直徑各不相同,從小到大依次編號(hào)為1,2,n的盤片,現(xiàn)要求將X塔座上的n個(gè)盤片移到塔座Z上并仍按同樣順序疊放,盤片移動(dòng)時(shí)必須遵守以下規(guī)則:每次只能移動(dòng)一個(gè)盤片;盤片可以插在X,Y和Z中任一
24、塔座;任何時(shí)候都不能將一個(gè)較大的盤片放在較小的盤片上。設(shè)計(jì)遞歸求解算法。要求:使用遞歸算法求解;盤片的個(gè)數(shù)n由用戶輸入,其值不能超過12。實(shí)驗(yàn)12:二叉樹的操作一、實(shí)驗(yàn)?zāi)康?)熟悉二叉樹樹的基本操作。2)掌握二叉樹的實(shí)現(xiàn)以及實(shí)際應(yīng)用。3)加深二叉樹的理解,逐步培養(yǎng)解決實(shí)際問題的編程能力。二、實(shí)驗(yàn)環(huán)境裝有Visual C6.0的計(jì)算機(jī)。本次實(shí)驗(yàn)共計(jì)4學(xué)時(shí)。三、實(shí)驗(yàn)內(nèi)容1、二叉樹的基本操作【問題描述】現(xiàn)需要編寫一套二叉樹的操作函數(shù),以便用戶能夠方便的利用這些函數(shù)來實(shí)現(xiàn)自己的應(yīng)用。其中操作函數(shù)包括:1> 創(chuàng)建二叉樹CreateBTNode(*b,*str):根據(jù)二叉樹括號(hào)表示法的字符串*str
25、生成對(duì)應(yīng)的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)。2> 輸出二叉樹DispBTNode(*b):以括號(hào)表示法輸出一棵二叉樹。3> 查找結(jié)點(diǎn)FindNode(*b,x):在二叉樹b中尋找data域值為x的結(jié)點(diǎn),并返回指向該結(jié)點(diǎn)的指針。4> 求高度BTNodeDepth(*b):求二叉樹b的高度。若二叉樹為空,則其高度為0;否則,其高度等于左子樹與右子樹中的最大高度加l。5> 求二叉樹的結(jié)點(diǎn)個(gè)數(shù)NodesCount(BTNode *b)6> 先序遍歷的遞歸算法:void PreOrder(BTNode *b) 7> 中序遍歷的遞歸算法:void InOrder(BTNode *b) 8&
26、gt; 后序遍歷遞歸算法:void PostOrder(BTNode *b) 9> 層次遍歷算法void LevelOrder(BTNode *b)【基本要求】實(shí)現(xiàn)以上9個(gè)函數(shù)。主函數(shù)中實(shí)現(xiàn)以下功能:創(chuàng)建下圖中的樹b輸出二叉樹b找到H節(jié)點(diǎn),輸出其左右孩子值輸出b的高度輸出b的節(jié)點(diǎn)個(gè)數(shù)輸出b的四種遍歷順序ABDCEHJKLMNFGI【實(shí)驗(yàn)提示】數(shù)據(jù)結(jié)構(gòu)的定義:#include <stdio.h>#include <malloc.h>#define MaxSize 100typedef char ElemType;typedef struct nodeElemType
27、 data;/*數(shù)據(jù)元素*/struct node *lchild;/*指向左孩子*/struct node *rchild;/*指向右孩子*/ BTNode;各個(gè)函數(shù)的定義:void CreateBTNode(BTNode *&b,char *str);BTNode *FindNode(BTNode *b,ElemType x);int BTNodeDepth(BTNode *b);void DispBTNode(BTNode *b);int NodesCount(BTNode *b);void PreOrder(BTNode *b);void InOrder(BTNode *b);
28、void PostOrder(BTNode *b);void TravLevel(BTNode *b);主函數(shù)的結(jié)構(gòu):void main()BTNode *b,*p,*lp,*rp;char str="A(B(D,E(H(J,K(L,M(,N),C(F,G(,I)"CreateBTNode(b,str); printf("n");printf("輸出二叉樹:");DispBTNode(b);printf("n");printf("'H'結(jié)點(diǎn):");p=FindNode(b,
29、9;H');if (p!=NULL)/此處輸出p的左右孩子節(jié)點(diǎn)的值printf("n");printf("二叉樹b的深度:%dn",BTNodeDepth(b);printf("二叉樹b的結(jié)點(diǎn)個(gè)數(shù):%dn",NodesCount(b);printf("n");printf(" 先序遍歷序列:n");printf(" 遞歸算法:");PreOrder(b);printf("n");printf(" 中序遍歷序列:n");print
30、f(" 遞歸算法:");InOrder(b);printf("n");printf(" 后序遍歷序列:n");printf(" 遞歸算法:");PostOrder(b);printf("n");printf(" 層次遍歷序列:"); printf("n");TravLevel(b); printf("n");2.2 二叉樹的線索化【問題描述】編寫一個(gè)程序,實(shí)現(xiàn)中序線索化二叉樹,輸出線索中序序列。【基本要求】用上圖的二叉樹b來驗(yàn)證你的程序
31、?!緦?shí)驗(yàn)提示】數(shù)據(jù)結(jié)構(gòu)的定義:#include <stdio.h>#include <malloc.h>#define MaxSize 100typedef char ElemType;typedef struct node ElemType data;int ltag,rtag; /*增加的線索標(biāo)記*/struct node *lchild;struct node *rchild; TBTNode;TBTNode *pre;各個(gè)函數(shù)的定義:void CreateTBTNode(TBTNode * &b,char *str)void DispTBTNode(TB
32、TNode *b)void Thread(TBTNode *&p)TBTNode *CreaThread(TBTNode *b) /*中序線索化二叉樹*/void ThInOrder(TBTNode *tb)主函數(shù)的結(jié)構(gòu):void main()TBTNode *b,*tb;CreateTBTNode(b,"A(B(D,E(H(J,K(L,M(,N),C(F,G(,I)"); printf(" 二叉樹:");DispTBTNode(b);printf("n");tb=CreaThread(b);printf(" 線索中
33、序序列:");ThInOrder(tb);printf("n");3實(shí)驗(yàn)結(jié)果此處填寫程序運(yùn)行結(jié)果。4實(shí)驗(yàn)心得此處填寫你的實(shí)驗(yàn)心得體會(huì)。實(shí)驗(yàn)13:哈夫曼編碼一、實(shí)驗(yàn)?zāi)康?)熟悉哈夫曼樹的基本操作。2)掌握哈夫曼編碼的實(shí)現(xiàn)以及實(shí)際應(yīng)用。3)加深對(duì)哈夫曼樹、哈夫曼編碼的理解,逐步培養(yǎng)解決實(shí)際問題的編程能力。二、實(shí)驗(yàn)環(huán)境裝有Visual C6.0的計(jì)算機(jī)。本次實(shí)驗(yàn)共計(jì)4學(xué)時(shí)。三、實(shí)驗(yàn)內(nèi)容【問題描述】利用哈夫曼編碼進(jìn)行通信可以大大提高信道利用率,縮短信息傳輸時(shí)間,降低傳輸成本。但是,這要求發(fā)送端通過一個(gè)編碼系統(tǒng)對(duì)數(shù)據(jù)進(jìn)行編碼,在接受端將傳來的數(shù)據(jù)進(jìn)行譯碼。試為這樣的信息收發(fā)
34、站寫一個(gè)哈夫曼編碼/譯碼系統(tǒng)。【基本要求】本系統(tǒng)應(yīng)實(shí)現(xiàn)以下功能:(功能13必做,4為選做,請(qǐng)課后自行完成)(1) 初始化:字符集(字母az,空格)共27個(gè)字符,以及其權(quán)值。建立哈夫曼樹。并建立各個(gè)字符的哈夫曼編碼。(2) 打印字符集的哈夫曼編碼。(3) 編碼:從終端讀入字符串,實(shí)現(xiàn)該字符串的編碼。(4) 譯碼:實(shí)現(xiàn)剛才生成的哈夫曼編碼還原為字符串。(選做)【已知條件】(1)字符集的權(quán)值如下表:【實(shí)驗(yàn)提示】數(shù)據(jù)結(jié)構(gòu)的定義:#define N 50/*葉子結(jié)點(diǎn)數(shù)*/#define M 2*N-1/*樹中結(jié)點(diǎn)總數(shù)*/typedef structchar data;/*結(jié)點(diǎn)值*/int weight;
35、/*權(quán)重*/int parent;/*雙親結(jié)點(diǎn)*/int lchild;/*左孩子結(jié)點(diǎn)*/int rchild;/*右孩子結(jié)點(diǎn)*/ HTNode;typedef structchar cdN;/*存放哈夫曼碼*/int start; HCode;各個(gè)函數(shù)的定義:void CreateHT(HTNode ht,int n)/*創(chuàng)建哈夫曼樹*/void CreateHCode(HTNode ht,HCode hcd,int n)/*創(chuàng)建哈夫曼編碼*/void DispHCode(HTNode ht,HCode hcd,int n)/*顯示各個(gè)字符的哈夫曼編碼*/void Encode(char *
36、s,HTNode ht,HCode hcd,int n) /*顯示字符串s的哈夫曼編碼*/主函數(shù)的結(jié)構(gòu):char str=' ','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s'
37、,'t','u','v','w','x','y','z' /*字符集*/int fnum=186,64,13,22,32,103,21,15,47,57,1,5,32,20,57,63,15,1,48,51,80,23,8,18,1,16,1; /*字符集對(duì)應(yīng)的權(quán)值*/CreateHT();CreateHCode();DispHCode();gets(s);Encode();實(shí)驗(yàn)14:圖的存儲(chǔ)和遍歷一、實(shí)驗(yàn)?zāi)康?)熟悉圖的基本操作。2)掌握?qǐng)D的存儲(chǔ)實(shí)現(xiàn)以及遍歷操作。3)加深對(duì)圖的理解
38、,逐步培養(yǎng)解決實(shí)際問題的編程能力。二、實(shí)驗(yàn)環(huán)境裝有Visual C6.0的計(jì)算機(jī)。本次實(shí)驗(yàn)共計(jì)2學(xué)時(shí)。三、實(shí)驗(yàn)內(nèi)容【基本要求】1、用鄰接矩陣存儲(chǔ)方式,表示下面的圖,并輸出。2、由上面的鄰接矩陣產(chǎn)生鄰接表,并輸出。3、編程完成從頂點(diǎn)0開始的深度優(yōu)先遍歷和廣度優(yōu)先遍歷。【輸出結(jié)果】輸出結(jié)果例子如下:有向圖G的鄰接矩陣: 0 5 0 7 0 0 0 0 4 0 0 0 8 0 0 0 0 9 0 0 5 0 0 6 0 0 0 5 0 0 3 0 0 0 1 0 圖G的鄰接矩陣轉(zhuǎn)換成鄰接表: 0: 1 3 1: 2 2: 0 5 3: 2 5 4: 3 5: 0 4從頂點(diǎn)0開始的DFS: 0 1 2
39、 5 4 3從頂點(diǎn)0開始的BFS: 0 1 3 2 5 4【提示】#include <stdio.h>#include <malloc.h>#defineMAXV 100/*最大頂點(diǎn)個(gè)數(shù)*/#define INF 32767 /*INF表示*/typedef int InfoType;/*以下定義鄰接矩陣類型*/typedef struct int no;/*頂點(diǎn)編號(hào)*/InfoType info;/*頂點(diǎn)其他信息*/ VertexType;/*頂點(diǎn)類型*/typedef struct /*圖的定義*/ int edgesMAXVMAXV; /*鄰接矩陣*/ int v
40、exnum,arcnum; /*頂點(diǎn)數(shù),弧數(shù)*/VertexType vexsMAXV;/*存放頂點(diǎn)信息*/ MGraph;/*圖的鄰接矩陣類型*/*以下定義鄰接表類型*/typedef struct ANode /*弧的結(jié)點(diǎn)結(jié)構(gòu)類型*/int adjvex; /*該弧的終點(diǎn)位置*/ struct ANode *nextarc; /*指向下一條弧的指針*/ InfoType info; /*該弧的相關(guān)信息,這里用于存放權(quán)值*/ ArcNode;typedef int Vertex;typedef struct Vnode /*鄰接表頭結(jié)點(diǎn)的類型*/Vertex data; /*頂點(diǎn)信息*/ A
41、rcNode *firstarc; /*指向第一條弧*/ VNode;typedef VNode AdjListMAXV;/*AdjList是鄰接表類型*/typedef struct AdjList adjlist; /*鄰接表*/ int n,e; /*圖中頂點(diǎn)數(shù)n和邊數(shù)e*/ ALGraph; /*圖的鄰接表類型*/int visitedMAXV;/*全局?jǐn)?shù)組*/void MatToList(MGraph,ALGraph *&);/*鄰接矩陣轉(zhuǎn)為鄰接表*/void DispMat(MGraph);/*輸出鄰接矩陣*/void DispAdj(ALGraph *);/*輸出鄰接表*
42、/void DFS(ALGraph *G,int v);/*深度優(yōu)先遍歷*/void BFS(ALGraph *G,int v);/*廣度優(yōu)先遍歷*/void main()int i,j;MGraph g;ALGraph *G;int AMAXV6=0,5,0,7,0,0,0,0,4,0,0,0,8,0,0,0,0,9,0,0,5,0,0,6,0,0,0,5,0,0,3,0,0,0,1,0;g.vexnum=6;g.arcnum=10;for (i=0;i<g.vexnum;i+)for (j=0;j<g.vexnum;j+)g.edgesij=Aij;printf("n
43、");printf(" 有向圖G的鄰接矩陣:n");DispMat(g);G=(ALGraph *)malloc(sizeof(ALGraph);printf(" 圖G的鄰接矩陣轉(zhuǎn)換成鄰接表:n");MatToList(g,G);DispAdj(G);printf("n");printf("從頂點(diǎn)0開始的DFS:n");DFS(G,0);printf("n");printf("從頂點(diǎn)0開始的BFS:n");BFS(G,0);printf("n")
44、;void MatToList(MGraph g,ALGraph *&G)/*將鄰接矩陣g轉(zhuǎn)換成鄰接表G*/*輸入代碼*/void DispMat(MGraph g)/*輸出鄰接矩陣g*/*輸入代碼*/void DispAdj(ALGraph *G)/*輸出鄰接表G*/*輸入代碼*/void DFS(ALGraph *G,int v) /*輸入代碼*/void BFS(ALGraph *G,int v) /*輸入代碼*/實(shí)驗(yàn)15:Prim算法求最小生成樹一、實(shí)驗(yàn)?zāi)康?)熟悉圖的基本操作。2)掌握利用Prim算法求圖的最小生成樹。3)加深對(duì)圖的理解,逐步培養(yǎng)解決實(shí)際問題的編程能力。二、實(shí)
45、驗(yàn)環(huán)境裝有Visual C6.0的計(jì)算機(jī)。本次實(shí)驗(yàn)共計(jì)2學(xué)時(shí)。三、實(shí)驗(yàn)內(nèi)容【基本要求】編寫一個(gè)程序,對(duì)于如下的無向帶權(quán)圖,利用Prim算法輸出從頂點(diǎn)0出發(fā)的最小生成樹。實(shí)驗(yàn)16:圖綜合實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康?)熟悉圖的基本操作。2)掌握求圖的最短路徑算法。3)加深對(duì)圖的理解,逐步培養(yǎng)解決實(shí)際問題的編程能力。二、實(shí)驗(yàn)環(huán)境裝有Visual C6.0的計(jì)算機(jī)。本次實(shí)驗(yàn)共計(jì)4學(xué)時(shí)。三、實(shí)驗(yàn)內(nèi)容【基本要求】給定n個(gè)村莊之間的交通圖。若村莊i和j之間有路可通,則i和j用邊連接,邊上的權(quán)值Wij表示這條道路的長(zhǎng)度。現(xiàn)打算在這n個(gè)村莊中選定一個(gè)村莊建一所醫(yī)院。編寫如下算法:(1) 求出該醫(yī)院應(yīng)建在哪個(gè)村莊,才能使距
46、離醫(yī)院最遠(yuǎn)的村莊到醫(yī)院的路程最短。(2) 求出該醫(yī)院應(yīng)建在哪個(gè)村莊,能使其它所有村莊到醫(yī)院的路徑總和最短?!咎崾尽?#252; 對(duì)于問題(1),可以先求出每個(gè)村莊到其它所有村莊的最短路徑,保存其最大值(表示假設(shè)醫(yī)院建在該村莊,距離醫(yī)院最遠(yuǎn)的村莊的路徑長(zhǎng)度);然后在這些最大值中找出一個(gè)最小值。ü 對(duì)于問題(2),可以先求出每個(gè)村莊到其它所有村莊的最短路徑,保存其累加和(表示假設(shè)醫(yī)院建在該村莊,其它所有村莊距離醫(yī)院的路徑總和);然后在這些和中找出一個(gè)最小值。ü 自己設(shè)定n個(gè)村莊的交通圖。例如下圖所示:實(shí)驗(yàn)17:線性查找一、實(shí)驗(yàn)?zāi)康?)熟悉查找的基本操作。2)掌握線性查找(順序查
47、找、二分查找)的實(shí)現(xiàn)。3)加深對(duì)查找的理解,逐步培養(yǎng)解決實(shí)際問題的編程能力。二、實(shí)驗(yàn)環(huán)境裝有Visual C6.0的計(jì)算機(jī)。本次實(shí)驗(yàn)共計(jì)2學(xué)時(shí)。三、實(shí)驗(yàn)內(nèi)容1、順序查找編寫一個(gè)程序,輸出在順序表中3,6,2,10,1,8,5,7,4,9 中采用順序查找的方法查找關(guān)鍵字5的過程。2、二分查找【基本要求】編寫一個(gè)程序,輸出在順序表中1,2,3,4,5,6,7,8,9,10中采用二分查找法查找關(guān)鍵字9的過程。【輸出結(jié)果】輸出結(jié)果例子如下:第1次查找:在0,9中查找到元素R4:5第2次查找:在5,9中查找到元素R7:8第3次查找:在8,9中查找到元素R8:9元素9的位置是8實(shí)驗(yàn)18:哈希查找一、實(shí)驗(yàn)?zāi)?/p>
48、的1)熟悉查找的基本操作。2)掌握哈希查找的實(shí)現(xiàn)。3)加深對(duì)查找的理解,逐步培養(yǎng)解決實(shí)際問題的編程能力。二、實(shí)驗(yàn)環(huán)境裝有Visual C6.0的計(jì)算機(jī)。本次實(shí)驗(yàn)共計(jì)2學(xué)時(shí)。三、實(shí)驗(yàn)內(nèi)容【基本要求】編寫一個(gè)程序,實(shí)現(xiàn)哈希表的相關(guān)運(yùn)算,并在此基礎(chǔ)上完成如下功能:(1) 建立16,74,60,43,54,90,46,31,29,88,77哈希表A0.12,哈希函數(shù)為H(k)=key%p,(p取13),并采用線性探查法解決沖突。(2) 在上述哈希表中查找關(guān)鍵字為29的記錄。(3) 在上述哈希表中刪除關(guān)鍵字為77的記錄,再將其插入?!据敵鼋Y(jié)果】輸出結(jié)果例子如下:哈希表地址: 0 1 2 3 4 5 6
49、7 8 9 10 11 12 哈希表關(guān)鍵字: 77 54 16 43 31 29 46 60 74 88 90 搜索次數(shù): 2 1 1 1 1 4 1 1 1 1 1 平均搜索長(zhǎng)度ASL(11)=1.36364 ha6.key=29 刪除關(guān)鍵字77 哈希表地址: 0 1 2 3 4 5 6 7 8 9 10 11 12 哈希表關(guān)鍵字: 54 16 43 31 29 46 60 74 88 90 搜索次數(shù): 1 1 1 1 4 1 1 1 1 1 平均搜索長(zhǎng)度ASL(10)=1.3 未找到77 插入關(guān)鍵字77 哈希表地址: 0 1 2 3 4 5 6 7 8 9 10 11 12 哈希表關(guān)鍵字:
50、 77 54 16 43 31 29 46 60 74 88 90 搜索次數(shù): 2 1 1 1 1 4 1 1 1 1 1 平均搜索長(zhǎng)度ASL(11)=1.36364實(shí)驗(yàn)19:查找綜合實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康?)熟悉查找的基本操作。2)掌握二叉排序樹的基本運(yùn)算。3)加深對(duì)查找的理解,逐步培養(yǎng)解決實(shí)際問題的編程能力。二、實(shí)驗(yàn)環(huán)境裝有Visual C6.0的計(jì)算機(jī)。本次實(shí)驗(yàn)共計(jì)4學(xué)時(shí)。三、實(shí)驗(yàn)內(nèi)容1、統(tǒng)計(jì)字符串中字符出現(xiàn)的次數(shù)編寫一個(gè)程序,由鍵盤輸入一個(gè)字符串,統(tǒng)計(jì)該字符串中出現(xiàn)的字符及其次數(shù)。然后輸出結(jié)果。要求用一個(gè)二叉樹來保存處理結(jié)果,字符串中每個(gè)不同的字符用樹的結(jié)點(diǎn)表示,結(jié)點(diǎn)應(yīng)該包含四個(gè)域:該字符、該字符出現(xiàn)的次數(shù)、左子樹指針、右子樹指針;其中左子樹的字符的
溫馨提示
- 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. 人人文庫網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030年中國面包刷市場(chǎng)分析及競(jìng)爭(zhēng)策略研究報(bào)告
- 2025至2030年中國鋁鈦合金地拖市場(chǎng)分析及競(jìng)爭(zhēng)策略研究報(bào)告
- 2025至2030年中國遠(yuǎn)距離一體紅外夜視彩色攝像機(jī)市場(chǎng)分析及競(jìng)爭(zhēng)策略研究報(bào)告
- 2025至2030年中國網(wǎng)式載物臺(tái)車市場(chǎng)分析及競(jìng)爭(zhēng)策略研究報(bào)告
- 2025至2030年中國硝制毛皮市場(chǎng)分析及競(jìng)爭(zhēng)策略研究報(bào)告
- 2025至2030年中國電動(dòng)式管子坡口機(jī)市場(chǎng)分析及競(jìng)爭(zhēng)策略研究報(bào)告
- 2025至2030年中國灌裝加塞機(jī)市場(chǎng)分析及競(jìng)爭(zhēng)策略研究報(bào)告
- 2025至2030年中國汽車消聲器芯市場(chǎng)分析及競(jìng)爭(zhēng)策略研究報(bào)告
- 2025至2030年中國桿諾市場(chǎng)分析及競(jìng)爭(zhēng)策略研究報(bào)告
- 2025至2030年中國異形五金彈片市場(chǎng)分析及競(jìng)爭(zhēng)策略研究報(bào)告
- 《國有企業(yè)招投標(biāo)及采購管理辦法》
- GB/T 16451-2008天然脂肪醇
- GB 5013.2-1997額定電壓450/750V及以下橡皮絕緣電纜第2部分:試驗(yàn)方法
- 普通高中物理課程標(biāo)準(zhǔn)
- 國家開放大學(xué)《監(jiān)督學(xué)》形考任務(wù)( 1-4)試題和答案解析
- 完工付款最終付款申請(qǐng)表
- 人工動(dòng)靜脈內(nèi)瘺
- 新版(七步法案例)PFMEA
- 慢阻肺隨訪記錄表正式版
- 廣西大學(xué)數(shù)學(xué)建模競(jìng)賽選拔賽題目
- 受戒申請(qǐng)表(共3頁)
評(píng)論
0/150
提交評(píng)論