97超级碰碰碰久久久_精品成年人在线观看_精品国内女人视频免费观_福利一区二区久久

算法設(shè)計(jì)心得體會(huì)

時(shí)間:2022-07-03 00:58:32 設(shè)計(jì) 我要投稿
  • 相關(guān)推薦

算法設(shè)計(jì)心得體會(huì)

  一、實(shí)驗(yàn)內(nèi)容:

算法設(shè)計(jì)心得體會(huì)

  這學(xué)期的算法與設(shè)計(jì)課,老師布置了這四個(gè)問(wèn)題,分別是貨郎擔(dān)問(wèn)題,動(dòng)態(tài)生成二維數(shù)組,對(duì)話(huà)框下拉列表,排序問(wèn)題。

  二、學(xué)習(xí)掌握:

  基本程序描述:

 。1)貨郎擔(dān)問(wèn)題:貨郎擔(dān)問(wèn)題屬于易于描述但難于解決的著名難題之一,至今世界上還有不少人在研究它。貨郎擔(dān)問(wèn)題要從圖g的所有周游路線(xiàn)中求取具有最小成本的周游路線(xiàn),而由始點(diǎn)出發(fā)的周游路線(xiàn)一共有(n一1)!條,即等于除始結(jié)點(diǎn)外的n一1個(gè)結(jié)點(diǎn)的排列數(shù),因此貨郎擔(dān)問(wèn)題是一個(gè)排列問(wèn)題。貨郎擔(dān)的程序?qū)崿F(xiàn)了利用窮舉法解決貨郎擔(dān)問(wèn)題,可以在城市個(gè)數(shù)和各地費(fèi)用給定的情況下利用窮舉法逐一計(jì)算出每一條路線(xiàn)的費(fèi)用,并從中選出費(fèi)用最小的路線(xiàn),從而求出問(wèn)題的解。

  (2)費(fèi)用矩陣:費(fèi)用矩陣的主要內(nèi)容是動(dòng)態(tài)生成二維數(shù)組。首先由鍵盤(pán)輸入自然數(shù),費(fèi)用矩陣的元素由隨機(jī)數(shù)產(chǎn)生,并取整,把生成的矩陣存放在二維數(shù)組中,最后把矩陣內(nèi)容輸出到文件和屏幕上。它采用分支界限法,分支限界法的基本思想是對(duì)包含具有約束條件的最優(yōu)化問(wèn)題的所有可行解的解(數(shù)目有限)空間進(jìn)行搜索。該算法在具體執(zhí)行時(shí),把全部可行的解空間不斷分割為越來(lái)越小的子集,并為每個(gè)子集內(nèi)的解計(jì)算一個(gè)下界或上界。動(dòng)態(tài)生成二維n*n的數(shù)組程序利用指針表示數(shù)組的行和列,并逐一分配空間,在輸入n的數(shù)值后,系統(tǒng)自動(dòng)分配空間,生成n*n的數(shù)組,并產(chǎn)生隨機(jī)數(shù)填充數(shù)組,最后將結(jié)果輸入到指定文件中。

 。3)Mfc:在下拉列表框中添加內(nèi)容程序,在下拉列表對(duì)應(yīng)的函數(shù)中利用addstring添加需要的內(nèi)容。首先定義下拉列表框?yàn)閏combox型,并定義其屬性名,利用addstring函數(shù)可以任意添加需要的內(nèi)容。a排序問(wèn)題:快速排序的運(yùn)行時(shí)間與劃分是否對(duì)稱(chēng)有關(guān),其最壞情況發(fā)生在劃分過(guò)程中產(chǎn)生的兩個(gè)區(qū)域分別包含n-1個(gè)元素和1個(gè)元素的時(shí)候。其算法的時(shí)間復(fù)雜度為O(n2),在最好的情況下每次劃分的基準(zhǔn)恰好為中值,可得其算法時(shí)間復(fù)雜度為O(n㏒n)。算法的實(shí)現(xiàn)和理解和代碼實(shí)現(xiàn)完全是兩回事,想要完全掌握一種算法,需要?jiǎng)邮謱?shí)踐,用代碼實(shí)現(xiàn),才能理解透徹,真正掌握。b對(duì)話(huà)框下拉列表:這個(gè)項(xiàng)目簡(jiǎn)單易懂,輕松實(shí)現(xiàn)。

  三、疑問(wèn)與總結(jié):

  貨郎擔(dān)的問(wèn)題,我認(rèn)為窮舉法相對(duì)比而言是比較初級(jí)的方法,費(fèi)時(shí)耗力,適合在練習(xí)時(shí)選用,但是在實(shí)際問(wèn)題中不建議采用?唆斔箍柣蛘咂绽锬匪惴ㄇ笕∽钚∩蓸(shù)的方法來(lái)解決貨郎擔(dān)的問(wèn)題是更適合現(xiàn)實(shí)解決問(wèn)題的。我認(rèn)為程序可以用switch函數(shù)來(lái)將函數(shù)分成幾個(gè)部分更人性化,比如分為解決問(wèn)題的的選項(xiàng),輸出結(jié)果選項(xiàng),退出程序選項(xiàng)等。再有就是費(fèi)用矩陣的值可以從文件中讀取,而結(jié)果也可以直接放在指定文件中,這樣在實(shí)際應(yīng)用中比較廣泛。

  動(dòng)態(tài)生成二維數(shù)組的程序我認(rèn)為如果按照規(guī)范性,我的方法是中規(guī)中矩的,畢竟再向下延伸,生成三維的數(shù)組,需要三層的指針來(lái)實(shí)現(xiàn)。但是就程序的簡(jiǎn)化程度和計(jì)算機(jī)處理時(shí)間來(lái)說(shuō),我認(rèn)為這樣雙層指針的算法有些太占用內(nèi)存,畢竟要給行和列各分配n個(gè)空間。我通過(guò)與同學(xué)的交流,我發(fā)現(xiàn)可以用1位數(shù)組來(lái)實(shí)現(xiàn)二維的n*n的數(shù)組。首先分配n*n的空間,然后通過(guò)循環(huán)在一行的數(shù)據(jù)達(dá)到n時(shí)自動(dòng)換行。這樣程序得到了一定的簡(jiǎn)化,并且減少了一定的內(nèi)存使用。我認(rèn)為這種方法是比較貼合實(shí)際的。

  四、心得體會(huì):

  在計(jì)算機(jī)軟件專(zhuān)業(yè)中,算法分析與設(shè)計(jì)是一門(mén)非常重要的課程,很多人為它如癡如醉。很多問(wèn)題的解決,程序的編寫(xiě)都要依賴(lài)它,在軟件還是面向過(guò)程的階段,就有程序=算法+數(shù)據(jù)結(jié)構(gòu)這個(gè)公式。算法的學(xué)習(xí)對(duì)于培養(yǎng)一個(gè)人的邏輯思維能力是有極大幫助的,它可以培養(yǎng)我們養(yǎng)成思考分析問(wèn)題,解決問(wèn)題的能力。

  如果一個(gè)算法有缺陷,或不適合某個(gè)問(wèn)題,執(zhí)行這個(gè)算法將不會(huì)解決這個(gè)問(wèn)題。不同的算法可能用不同的時(shí)間、空間或效率來(lái)完成同樣的任務(wù)。一個(gè)算法的優(yōu)劣可以用空間復(fù)雜性和時(shí)間復(fù)雜度來(lái)衡量。算法可以使用自然語(yǔ)言、偽代碼、流程圖等多種不同的方法來(lái)描述。計(jì)算機(jī)系統(tǒng)中的操作系統(tǒng)、語(yǔ)言編譯系統(tǒng)、數(shù)據(jù)庫(kù)管理系統(tǒng)以及各種各樣的計(jì)算機(jī)應(yīng)用系統(tǒng)中的軟件,都必須使用具體的算法來(lái)實(shí)現(xiàn)。算法設(shè)計(jì)與分析是計(jì)算機(jī)科學(xué)與技術(shù)的一個(gè)核心問(wèn)題。因此,學(xué)習(xí)算法無(wú)疑會(huì)增強(qiáng)自己的競(jìng)爭(zhēng)力,提高自己的修為,為自己增彩。

【算法設(shè)計(jì)心得體會(huì)】相關(guān)文章:

算法教學(xué)設(shè)計(jì)05-18

帝國(guó)競(jìng)爭(zhēng)算法優(yōu)化設(shè)計(jì)論文07-03

年假的算法?07-11

年假的算法07-11

關(guān)于年假的算法07-11

焊工的工資算法07-13

算法的含義的教材講解07-03

養(yǎng)老保險(xiǎn)算法07-13

出缺勤工資的算法07-14

求助~關(guān)于病假工資的算法07-14