五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

九、常用基礎(chǔ)算法

2023-03-17 21:16 作者:努力賺錢養(yǎng)朵朵  | 我要投稿


綠色:需要掌握了解;紅色:需要會(huì)寫會(huì)用或很重要。

本章節(jié)主要是寫一些基礎(chǔ)算法,一般運(yùn)用在模擬類型的題目。


圖形輸出

此類題目都是模擬輸出圖形,可以1)觀察其規(guī)律而后按行列循環(huán)輸出,或者2)空間換時(shí)間創(chuàng)建二維數(shù)組給值后輸出。一般情況下使用方法2)的代碼容易編寫,但空間復(fù)雜度略高(數(shù)據(jù)規(guī)模小時(shí)放心用)。

常見題型有:楊輝三角形及其變體、打印沙漏、矩陣輸入輸出等。


暴力枚舉(下稱爆破)

在章節(jié)三、C++11標(biāo)準(zhǔn)庫準(zhǔn)備知識(shí)中,有提及判斷算法是否會(huì)超時(shí)的辦法,即設(shè)計(jì)的算法執(zhí)行運(yùn)算的次數(shù)不能超過10^8。因此,當(dāng)判斷運(yùn)算次數(shù)不會(huì)超過10^8且沒有優(yōu)化的需求時(shí),大膽爆破

例如:

①N是絕對(duì)值小于1e4的整數(shù)時(shí),設(shè)計(jì)的時(shí)間復(fù)雜度O(N2)的算法(10^8<=10^8);

②N是絕對(duì)值小于5e2的整數(shù)時(shí),設(shè)計(jì)的時(shí)間復(fù)雜度O(N3)的算法(1.25*10^8≈10^8,實(shí)際有點(diǎn)風(fēng)險(xiǎn))。

個(gè)別情況需要讀者酌情考慮是否使用暴力枚舉,在此不多贅述。


打表

打表是常見的空間換時(shí)間行為,即把已經(jīng)算過的值存起來便于下次使用,在遞歸的迭代寫法和動(dòng)態(tài)規(guī)劃算法中都可能運(yùn)用到。本質(zhì)是一種便于查詢使用和減少計(jì)算、降低總體時(shí)間復(fù)雜度的方法。例如分解2-N的質(zhì)因數(shù)時(shí),不需要對(duì)于每個(gè)N都從2~sqrt(N)循環(huán)分解,可以先計(jì)算出2到最大范圍的平方根的數(shù)的質(zhì)數(shù)表,便于計(jì)算。


進(jìn)制轉(zhuǎn)換

①十進(jìn)制轉(zhuǎn)為R進(jìn)制(除基數(shù)取余數(shù)法的do-while形式)

②R進(jìn)制轉(zhuǎn)十進(jìn)制

③R1進(jìn)制轉(zhuǎn)R2進(jìn)制(R1進(jìn)制轉(zhuǎn)十進(jìn)制,再十進(jìn)制轉(zhuǎn)R2進(jìn)制即可,代碼就上面?zhèn)z函數(shù)擱一起)

注:若轉(zhuǎn)換得到的數(shù)的位數(shù)超過最大整型類型long long能容納的范圍,即大數(shù)轉(zhuǎn)換本質(zhì)是大數(shù)的乘除法算法)。


二分查找

1.標(biāo)準(zhǔn)庫的二分查找函數(shù):lower_bound、upper_bound、equal_range、binary_search。

2.自己實(shí)現(xiàn)binary_search(升序序列查找x的位置):

lower_bound(非遞減序列查找第一個(gè)大于等于x的位置)實(shí)現(xiàn):

??

九、常用基礎(chǔ)算法的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國家法律
山东| 临潭县| 衡水市| 怀集县| 平遥县| 永新县| 锦屏县| 白银市| 柳林县| 章丘市| 广灵县| 孝义市| 福安市| 台北县| 静海县| 潜山县| 林甸县| 临桂县| 平泉县| 昌乐县| 西充县| 海伦市| 略阳县| 朝阳区| 五大连池市| 张家川| 辽阳县| 靖西县| 彰武县| 柞水县| 武鸣县| 年辖:市辖区| 木里| 南投县| 岳普湖县| 新安县| 泌阳县| 日喀则市| 蒲江县| 汾阳市| 东方市|