算法太重要了
怎么設(shè)計(jì)一個(gè)算法程序呢
舉個(gè)例子吧
1?把原問題轉(zhuǎn)化為數(shù)學(xué)問題 求30個(gè)成績值中的最大值及對應(yīng)的姓名; 2?已知條件化為輸入數(shù)據(jù) 依次輸入30個(gè)名字和30個(gè)成績值;(其中名字的數(shù)據(jù)類型為字符串,成績值的數(shù)據(jù)類型為整數(shù)型,關(guān)于數(shù)據(jù)類型我們將在后面詳細(xì)講解) 3?分步計(jì)算 這是一個(gè)典型的求最大值的問題,方法很多,這里舉一種方法: 3-1 取出第1個(gè)同學(xué)和第2個(gè)同學(xué)的姓名和成績,比較大小,將那個(gè)較大的成績值儲存在一個(gè)位置,這個(gè)位置我們給他起個(gè)名字,就叫<當(dāng)前最大成績值>吧,再把這個(gè)較好的成績對應(yīng)的同學(xué)姓名存到另一個(gè)位置,就叫<當(dāng)前最好成績的同學(xué)姓名>; 3-2 這樣,第1個(gè)同學(xué)和第2個(gè)同學(xué)成績比較完成,得到了這2名同學(xué)中的成績最好的同學(xué),信息儲存在:<當(dāng)前最大成績值>和<當(dāng)前最好成績的同學(xué)姓名>中; 3-3?下面就是重復(fù)性的工作了,把得到的<當(dāng)前最大成績值>和<當(dāng)前最好成績的同學(xué)姓名>與第3位同學(xué)進(jìn)行比較,仍然是把較大的成績值儲存在<當(dāng)前最大成績值>里,把這個(gè)較好的成績對應(yīng)的同學(xué)姓名存到<當(dāng)前最好成績的同學(xué)姓名>里; 3-4 這個(gè)過程一直進(jìn)行,直到把30個(gè)同學(xué)的信息都比較完,這時(shí)<當(dāng)前最大成績值>里存的值就是最好的成績,<當(dāng)前最好成績的同學(xué)姓名>里存的值就是這位最厲害的同學(xué)的姓名。 4?輸出 按照你想要的格式,將上面兩個(gè)儲存的值顯示出來,就完成了!
借上面的例子有幾點(diǎn)要說明一下
免責(zé)聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺僅提供信息存儲服務(wù)。文章僅代表作者個(gè)人觀點(diǎn),不代表本平臺立場,如有問題,請聯(lián)系我們,謝謝!