freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)報(bào)告--單位員工通訊錄管理系-文庫吧

2025-01-06 16:36 本頁面


【正文】 “分配”和“收集”兩種操作對(duì)單邏輯關(guān)鍵字進(jìn)行排序的一種內(nèi)部排序方法。先按 k1 排序分組,同一組中記錄,關(guān)鍵碼k1 相等,再對(duì)各組按 k2 排序分成子組,之后,對(duì)后面的關(guān)鍵碼繼續(xù)這樣的排序分組,直到按最次位關(guān)鍵碼 kd 對(duì)各子組排序后。再將各組連接起來,便得到一個(gè)有序序列。D、銷售額使用的是堆排序,堆排序首先要建立一個(gè)完全二叉樹的堆,其標(biāo)準(zhǔn)符合為父節(jié)點(diǎn)始終比子節(jié)點(diǎn)大。然后依次輸出頂結(jié)點(diǎn),然后在建立一個(gè)符合標(biāo)準(zhǔn)的堆重復(fù)操作即可。 調(diào)試并運(yùn)行測試數(shù)據(jù)為 文件,文件內(nèi)容如下:A234 安乃近 100 B123 阿莫西林 50 C455 銀翹片 20 D345 金銀花 30 D432 諾氟沙星 80 F872 羅紅霉素 35 J234 嗎丁啉 63 S342 青霉素 10 第 10 頁 共 36 頁 10運(yùn)行界面如下藥品信息的輸出按藥品編號(hào)排序(基數(shù)排序) 按單價(jià)排序(冒泡排序)按銷售量排序(快速排序) 按銷售額排序(堆排序)第 11 頁 共 36 頁 11校園導(dǎo)游咨詢(最短路徑)問題分析設(shè)計(jì)一個(gè)校園導(dǎo)游程序,為來訪的客人提供各種信息查詢服務(wù)。要求:(1)設(shè)計(jì)學(xué)校的校園平面圖,所含景點(diǎn)不少于 10 個(gè),以圖中頂點(diǎn)表示校內(nèi)各景點(diǎn),存放景點(diǎn)名稱、代號(hào)、簡介等信息;以邊表示路徑,存放路徑長度等相關(guān)信息。(2)為來訪客人提供圖中任意景點(diǎn)相關(guān)信息的查詢。(3)為來訪客人提供景點(diǎn)的問路查詢,即已知一個(gè)景點(diǎn),查詢到某景點(diǎn)之間的一條最短路徑及長度。算法分析設(shè)計(jì)校園導(dǎo)游咨詢要提供一些信息,主要是構(gòu)建一個(gè)圖,采用鄰接矩陣儲(chǔ)存,然后找到兩點(diǎn)間的最短路徑。這里求最短路徑采用迪杰斯特拉算法求最短路徑。迪杰斯特算法是根據(jù)路徑長度遞增的順序求解從頂點(diǎn) Vo 到其他個(gè)頂點(diǎn)的最短路徑。對(duì)于圖 G=(V,E) ,逐個(gè)將尚未求出最短路徑的頂點(diǎn)集合加入到已經(jīng)求出最短路徑的重點(diǎn)集合中:void shortestpath_DIJ(int num)//迪杰斯特拉算法最短路徑{int v,w,i,t。//i、w 和 v 為計(jì)數(shù)變量//t 表示景點(diǎn)個(gè)數(shù)int final[NUM]。 //標(biāo)志數(shù)組、用來存放頂點(diǎn)的信息int min。//記錄權(quán)值、最終輸出路徑for(v=0。vNUM。v++){final[v]=FALSE。 //假設(shè)從頂點(diǎn) num 到頂點(diǎn) v 沒有最短路徑D[v]=[num][v].length。//將 num 到其余頂點(diǎn)的最短路徑長度初始化為權(quán)值for(w=0。wNUM。w++) path[v][w]=FALSE。//初始化從 v到 w 的路徑值if(D[v]MAX) //存在路徑第 12 頁 共 36 頁 12{path[v][num]=TURE。 //存在標(biāo)志置為一path[v][v]=TURE。 //自身到自身} }D[num]=0。//初始化新路徑 final[num]=TURE。 //初始化 num 頂點(diǎn)屬于 final 集合 //開始主循環(huán),每一次求得num 到某個(gè)頂點(diǎn)的最短路徑,并將其加入到 final 集合 for(i=0。iNUM。++i) // 其余 個(gè)頂點(diǎn) {min=MAX。 //當(dāng)前所知離頂點(diǎn) num 的最近距離for(w=0。wNUM。++w)if(!final[w]) //w 頂點(diǎn)在 vs 中 if(D[w]min) //w 頂點(diǎn)離 num 頂點(diǎn)更近 {v=w。min=D[w]。} final[v]=TURE。 //離 num 頂點(diǎn)更近的 v 加入到 s 集合 for(w=0。wNUM。++w) //更新當(dāng)前最短路徑極其距離 if(!final[w]amp。amp。((min+[v][w].length)D[w]))//不在 s 集合,并且比以前所找到的路徑都短就更新當(dāng)前路徑 {D[w]=min+[v][w].length。//更新路徑for(t=0。tNUM。t++)path[w][t]=path[v][t]。path[w][w]=TURE。}} }第 13 頁 共 36 頁 13調(diào)試并運(yùn)行 運(yùn)行界面中工簡介景點(diǎn)信息查詢輸入相關(guān)的景點(diǎn)編號(hào)即可利用迪杰斯特拉算法求出最短路徑景點(diǎn)距離查詢:第 14 頁 共 36 頁 14課 程 設(shè) 計(jì) 心 得經(jīng)過三周的努力,課程設(shè)計(jì)終于完成了。因?yàn)槭窃诩倨诤箝_學(xué)前進(jìn)行課設(shè),任務(wù)量也非常大,再加上上學(xué)期數(shù)據(jù)結(jié)構(gòu)基礎(chǔ)不是非常扎實(shí),好多數(shù)據(jù)結(jié)構(gòu)知識(shí)點(diǎn)意思模糊,所以這次的課設(shè)對(duì)我來說很吃力,一方面要復(fù)習(xí)學(xué)過的知識(shí),一方面還要對(duì)程序經(jīng)行優(yōu)化,盡管如此,我并沒有放棄,而是一步步走過來。遇到問題不會(huì),就翻閱書籍查詢,在這次課設(shè)中也得到了老師和同學(xué)們的幫助。有些程序算法也借鑒網(wǎng)上的相關(guān)文檔對(duì)自己的算法經(jīng)行優(yōu)化。這次課設(shè)雖然艱難,但是我從中學(xué)習(xí)到了很多,也認(rèn)識(shí)到自己存在的很多問題:自己對(duì)算法優(yōu)化不夠好,而且代碼練得還是太少,編程經(jīng)驗(yàn)不足。所以在今后的學(xué)習(xí)中,在強(qiáng)化知識(shí)鞏固的同時(shí)更要注重實(shí)踐。在學(xué)習(xí)中,要熟記各種數(shù)據(jù)類型定義特點(diǎn)和基本運(yùn)算,并把這些東西在實(shí)踐中強(qiáng)化。我相信經(jīng)過我的不懈努力,我的編程技巧一定會(huì)逐漸上升。第 15 頁 共 36 頁 15附 錄單位員工通訊錄管理系統(tǒng):include include include define NULL 0typedef struct staff//////////////////員工通訊信息結(jié)構(gòu)類型的定義{int num。//員工編號(hào) char name[8]。//員工姓名 int phone。 //手機(jī)號(hào)碼 int call。//電話號(hào)碼 struct staff *next。}staff,*LinkList。//建立鏈表LinkList Creat(){int i,n。staff *p。LinkList L。L=(LinkList)malloc(sizeof(staff))。Lnext=NULL。printf(請(qǐng)輸入員工數(shù):)。scanf(%d,amp。n)。printf(\n\n\t\t\t***新建通訊錄***\n)。 for(i=0。in。i++){p=(staff*)malloc(sizeof(staff))。 printf(員工編號(hào):)。 scanf(%d,amp。pnum)。 printf(員工姓名:)。 scanf(%s,pname)。 printf(手機(jī)號(hào)碼:)。 scanf(%d,amp。pphone)。 printf(電話號(hào)碼:)。 scanf(%d,amp。pcall)。 pnext=Lnext。 Lnext=p。 printf(\t\t\t****輸入成功!***\n)。}return L。}//查找void Search(staff *l){ int m。staff *p。p=lnext。printf(\n\n\t\t\t**查詢通訊錄記錄**\n)。 printf(\n\t\t\t 請(qǐng)選擇查詢方式:\n)。 printf(\t\t\t*****************\n)。 printf(\t\t\t 1編號(hào) \n)。 printf(\t\t\t 2姓名 \n)。 printf(\t\t\t 3手機(jī) \n)。 printf(\t\t\t 4電話 \n)。 printf(\t\t\t*****************\n)。 printf(\t\t\t 請(qǐng)選擇:)。 scanf(%d,amp。m)。 while(m!=1amp。amp。m!=2amp。amp。m!=3amp。amp。m!=4) { printf(\t 輸入錯(cuò)誤!!!請(qǐng)重新選擇:)。scanf(%d,amp。m)。}。if(m==1)//按編號(hào)查詢{ int t。 printf(\n 請(qǐng)輸入想查詢的編號(hào):)。 scanf(%d,amp。t)。 while(pamp。amp。(pnum)!=t) {p=pnext。}if(p==NULL) {printf(\t 通訊錄中沒有此人!\n)。 } else{printf(\n\t\t\t****員工信息****\n)。printf(員工編號(hào): %d\n,pnum)。printf(員工姓名: %s\n,pname)。printf(手機(jī)電話: %d\n,pphone)。 printf(電話號(hào)碼: %d\n,pcall)。}} 。if(m==2)//按姓名查詢{ char s[8]。 printf(\n 請(qǐng)輸入想查詢的姓名:)。 scanf(%s,s)。 while(strcmp(pname,s)!=0amp。amp。(p!=0)){p=pnext。}if(strcmp(pname,s)==0) 第 16 頁 共 36 頁 16{printf(\n\t\t\t****員工信息****\n)。printf(員工編號(hào): %d\n,pnum)。printf(員工姓名: %s\n,pname)。printf(手機(jī)號(hào)碼: %d\n,pphone)。 printf(電話號(hào)碼: %d\n,pcall)。} elseprintf(\t 通訊錄中沒有此人!\n)。 } 。if(m==3)//按手機(jī)號(hào)碼查詢{ int t。 printf(\n 請(qǐng)輸入想查詢的手機(jī)號(hào)碼:)。 scanf(%d,amp。t)。 while(pamp。amp。(pphone)!=t){p=pnext。}if(p!=0) { printf(\n\t\t\t****員工信息****\n)。printf(員工編號(hào): %d\n,pnum)。printf(員工姓名: %s\n,pname)。printf(手機(jī)號(hào)碼: %d\n,pphone)。 printf(電話號(hào)碼: %d\n,pcall)。}elseprintf(\t 通訊錄中沒有此人!\n)。} 。if(m==4)//按電話號(hào)碼查詢{ int t。 printf(\n 請(qǐng)輸入想查詢的電話號(hào)碼:)。 scanf(\t%d,amp。t)。 while(pamp。amp。pcall!=t){p=pnext。}if(p!=0) { printf(\n\t\t\t****員工信息****\n)。printf(員工編號(hào): %d\n,pnum)。printf(員工姓名: %s\n,pname)。printf(手機(jī)號(hào)碼: %d\n,pphone)。printf(電話號(hào)碼: %d\n,pcall)。} elseprintf(\t 通訊錄中沒有此人!\n)。} 。}//刪除void Delete(staff *l) {int m。staff *p,*s。p=l。printf(\n\n\t\t\t**刪除通訊錄記錄**\n)。 printf(\n\t\t\t 請(qǐng)選擇刪除方式:\n)。 printf(\t\t\t*****************\n)。 printf(\t\t\t 1編號(hào) \n)。 printf(\t\t\t 2姓名 \n)。 printf(\t\t\t 3手機(jī) \n)。 printf(\t\t\t 4電話 \n)。 printf(\t\t\t*****************\n)。 printf(\t\t\t 請(qǐng)選擇:)。 scanf(%d,amp。m)。 while(m!=1amp。amp。m!=2amp。amp。m!=3amp。amp。m!=4) { printf(輸入錯(cuò)誤,請(qǐng)重新選擇:)。scanf(%d,amp。m)。}。if(m==1)//按編號(hào)刪除{ int t。 printf(\n\t 請(qǐng)輸入想刪除的編號(hào):)。 scanf(%d,amp。t)。 while(pnextamp。amp。pnextnum!=t) {p=pnext。}if(pnext) {s=pnext。pnext=snext。free(s)。printf(\t\t\t****刪除成功!****)。}elseprintf(\t 未找到要?jiǎng)h除的編號(hào),請(qǐng)重新選擇并輸入!\n)。 } 。if(m==2)//按姓名刪除{char ss[8]。 第 17 頁 共 36 頁 17printf(\n\t 請(qǐng)輸入想刪除的姓名:)。 scanf(%s
點(diǎn)擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1