常用算法
熟練地掌握算法原理、編程思想和代碼實現,就能夠做到舉一反三,輕松備考,順利過關。
1.累加與連乘
基本思想:設置初值,循環(huán)計算。
擴展:
(1)計算指定范圍內某一個數的倍數之和。
(2)計算某范圍內所有數的乘積。
(3)求某一個數列的和。
2.生成N個不同的隨機數
基本思想:將生成的數送入一個數組,每生成一個數后與數組中已有的數比較,如相同則丟棄,重新生成可使用語句Exit For。
3.求素數、極值
求素數基本思想:素數的意義;實現方法:雙重循環(huán),外循環(huán)判斷每一個數,內循環(huán)判斷能否被某數整除。
求極值基本思想:設第一個數為極值數,然后進入循環(huán)與其比較,超過則替換。
4.排序
(1)選擇法:每次先找出最小數所在的F標,排序結束后,交換最小數的位置。
(2)冒泡法:兩兩比較后交換。
(3)合并法:將兩個有序的數組合并成一個仃序的數組。兩個數組中的數兩兩比較,小者放入目標數組,直到.個數組為窄。
(4)插入法:每輸入或生成一個數馬上插入到數組中使其有序。
5.數列的插入、刪除和重組
(1)插入:對原數組進行擴充,循環(huán)查找插入位置(逐個比較),找到后,從后向前依次移動每一個數字,直到該位置,然后將數據插入。
(2)刪除:與插入類似,也是先查找位置,找到后,將該位置以后的每一個元素依次前移。
(3)重組:采用排序或移動元素的思想,具體情況具體分析,如奇偶數的分開等。
6.窮舉與遞推
(1)窮舉:利用循環(huán)將所有可能逐個測試,直到條件成立為止,如百錢買百雞問題、錢幣折零問題等。
(2)遞推(迭代):將一個復雜的計算過程轉化為簡單過程的重復,通常也是利用循環(huán)實現,這一次計算的結果作為下一次的變量繼續(xù)進行計算,直到滿足指定的條件,如猴子吃桃問題、計算近似數問題、數列計算問題等。
7.順序查找
基本思想:利用循環(huán)逐個比較待查找值,找到后退出,一般要使用Exit語句。
8.遞歸
基本思想:需要解決的問題必須用遞歸的方式進行描述,才能轉變?yōu)檫f歸過程,原則上所有的迭代過程都可以使用遞歸
過程來實現。遞歸描述有兩個關鍵要素:一是遞歸結束的條件;二是迭代公式(此次的結果能夠作為下一次的變量)。
遞歸過程的分析:遞推n次直到結束條件滿足,回歸n次得到運算結果。
典型遞歸:階乘的計算1!=1,n!=n*(n-1)!
最大公約數gcd(m,n):m mod n=0,gcd=n;gcd(m,n)=gcd(n,m mod n)
二分法查找search:中點值=關鍵值,結束;改變low、high后,遞歸調用search(a0,low,high,key,index)。
9.分類統(tǒng)計
統(tǒng)計各種類型的數據,如字母出現的次數、奇偶數統(tǒng)計等;舅悸肥钦莆辗诸悧l件的表示,設置各種類型的計數器(可以用數組),利用循環(huán)來解決。
10.字符串處理、加密與解密
字符串處理:輸入(inputbox函數或文本框)、求長度(1en函數,漢字問題)、循環(huán)處理。典型考點:分離指定字符、分類統(tǒng)計、字符串的重組、字符的插入與刪除等。
加密與解密:理解加密算法(移位法、密鑰表)。
整型數據的處理:各位數字的拆分;數的因子;最大公約數gcd(m,n)=a與最小公倍數m*n/a;素數與合數;互質數(兩個數的最大約數為1,兩個數有公因子)。
微信搜索"考試吧"了解更多考試資訊、下載備考資料
相關推薦: