為什么一定要學(xué)算法织鲸?

算法,先于計(jì)算機(jī)存在于世溪胶,比編程語言本身更為重要搂擦,語言只是工具,而算法才是靈魂哗脖。---云風(fēng)《游戲之旅-我的編程感悟》第二章(4m8h)

1瀑踢、算法評估

? ? 1.空間復(fù)雜度

? ? 2.時(shí)間復(fù)雜度

? ? 3.對基本操作的評估(一次加減乘除或內(nèi)存訪問,函數(shù)調(diào)用才避,都可以算作一次基本操作)

通常用大O表示法(big-Oh notation)來表示問題的復(fù)雜度橱夭,它表達(dá)的是問題的計(jì)算量的層次,O即Order的縮寫桑逝,O(n^2)表示基本操作使用的次數(shù)和問題的規(guī)模成平方的關(guān)系棘劣。

常見的層次按一下表遞增:

復(fù)雜度

2、數(shù)據(jù)結(jié)構(gòu)

程序是由算法和數(shù)據(jù)結(jié)構(gòu)組成的楞遏,要想學(xué)算法茬暇,也要學(xué)會如何去組織數(shù)據(jù),處理數(shù)據(jù)橱健。

? ? 1.線性表

? ? a.數(shù)組和鏈表

數(shù)組:指屋里地址連續(xù)的表,可以用內(nèi)存地址來檢索到對應(yīng)的元素沙廉,可以用常數(shù)時(shí)間訪問到指定2位置的元素拘荡,但是在中間插入和刪除元素的時(shí)間復(fù)雜度為線性的

鏈表:每個(gè)元素的物理位置是任意的撬陵,通過指針串接起來珊皿,它訪問的時(shí)間非常長,但是插入和刪除的速度卻很快巨税,由于需要額外的空間記錄元素的前后關(guān)系蟋定,占用內(nèi)存也大于數(shù)組

? ? b.堆棧草添、隊(duì)列和串

堆棧和隊(duì)列是兩種特殊的線形表驶兜。

堆棧:只能從一頭進(jìn)出,先進(jìn)入的數(shù)據(jù)后出來,廣泛用于類C語言的函數(shù)調(diào)用機(jī)制抄淑。做深度優(yōu)先搜索求解問題時(shí)也需要它屠凶。

隊(duì)列:和堆棧相反,采用先進(jìn)先出肆资,讓數(shù)據(jù)從線性表的一頭進(jìn)入矗愧,從另一頭出去,用來保持元素的先后順序郑原,被廣泛用在消息通訊中唉韭,也可以用于廣度搜索的算法笙以。

優(yōu)先隊(duì)列:每個(gè)元素都有一個(gè)優(yōu)先級活烙,出隊(duì)列的時(shí)候,永遠(yuǎn)是優(yōu)先級最小的元素優(yōu)先代箭,通常不是由線性表來實(shí)現(xiàn)栖秕。

c.樹春塌、二叉樹及其他

樹:對有層次的數(shù)據(jù)集的一種組織方式,樹中每個(gè)數(shù)據(jù)節(jié)點(diǎn)都有或沒有它所下屬的數(shù)據(jù)集簇捍,除了根節(jié)點(diǎn)是整棵樹的根源外只壳,每個(gè)數(shù)據(jù)節(jié)點(diǎn)都有唯一的父親。

二叉樹:二叉樹的子樹有明確的左右之分暑塑,讓左子樹指向自己的一個(gè)兒子吼句,讓右子樹指向自己的下一個(gè)兄弟。在表達(dá)式計(jì)算和數(shù)據(jù)壓縮事格,以及排序查找方面都有很多的用途惕艳。

四叉樹及八叉樹:四叉樹用于平面劃分,八叉樹用于三維空間驹愚,這里所說的空間远搪,不僅僅局限于游戲里的場景空間。

圖:圖中每個(gè)節(jié)點(diǎn)并沒有父子關(guān)系逢捺,圖純粹是點(diǎn)和邊的集合谁鳍,節(jié)點(diǎn)和節(jié)點(diǎn)之間允許加上一些與它相關(guān)的數(shù),稱為權(quán)劫瞳,帶權(quán)的圖一般叫做網(wǎng)絡(luò)倘潜,節(jié)點(diǎn)和節(jié)點(diǎn)之間可以是無方向的連接,也可以是有向連接志于。

d.映射表

key和內(nèi)容對應(yīng)起來涮因。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市伺绽,隨后出現(xiàn)的幾起案子养泡,更是在濱河造成了極大的恐慌嗜湃,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,639評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件瓤荔,死亡現(xiàn)場離奇詭異净蚤,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)输硝,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,277評論 3 385
  • 文/潘曉璐 我一進(jìn)店門今瀑,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人点把,你說我怎么就攤上這事橘荠。” “怎么了郎逃?”我有些...
    開封第一講書人閱讀 157,221評論 0 348
  • 文/不壞的土叔 我叫張陵哥童,是天一觀的道長。 經(jīng)常有香客問我褒翰,道長贮懈,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,474評論 1 283
  • 正文 為了忘掉前任优训,我火速辦了婚禮朵你,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘揣非。我一直安慰自己抡医,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,570評論 6 386
  • 文/花漫 我一把揭開白布早敬。 她就那樣靜靜地躺著忌傻,像睡著了一般。 火紅的嫁衣襯著肌膚如雪搞监。 梳的紋絲不亂的頭發(fā)上水孩,一...
    開封第一講書人閱讀 49,816評論 1 290
  • 那天,我揣著相機(jī)與錄音琐驴,去河邊找鬼俘种。 笑死,一個(gè)胖子當(dāng)著我的面吹牛棍矛,可吹牛的內(nèi)容都是我干的安疗。 我是一名探鬼主播抛杨,決...
    沈念sama閱讀 38,957評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼够委,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了怖现?” 一聲冷哼從身側(cè)響起茁帽,我...
    開封第一講書人閱讀 37,718評論 0 266
  • 序言:老撾萬榮一對情侶失蹤玉罐,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后潘拨,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體吊输,經(jīng)...
    沈念sama閱讀 44,176評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,511評論 2 327
  • 正文 我和宋清朗相戀三年铁追,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了季蚂。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,646評論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡琅束,死狀恐怖扭屁,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情涩禀,我是刑警寧澤料滥,帶...
    沈念sama閱讀 34,322評論 4 330
  • 正文 年R本政府宣布,位于F島的核電站艾船,受9級特大地震影響葵腹,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜屿岂,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,934評論 3 313
  • 文/蒙蒙 一践宴、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧雁社,春花似錦浴井、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,755評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至徒坡,卻和暖如春撕氧,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背喇完。 一陣腳步聲響...
    開封第一講書人閱讀 31,987評論 1 266
  • 我被黑心中介騙來泰國打工伦泥, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人锦溪。 一個(gè)月前我還...
    沈念sama閱讀 46,358評論 2 360
  • 正文 我出身青樓不脯,卻偏偏與公主長得像,于是被迫代替她去往敵國和親刻诊。 傳聞我的和親對象是個(gè)殘疾皇子防楷,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,514評論 2 348

推薦閱讀更多精彩內(nèi)容

  • 1 序 2016年6月25日夜,帝都则涯,天下著大雨复局,拖著行李箱和同學(xué)在校門口照了最后一張合照冲簿,搬離寢室打車去了提前租...
    RichardJieChen閱讀 5,082評論 0 12
  • 樹的概述 樹是一種非常常用的數(shù)據(jù)結(jié)構(gòu),樹與前面介紹的線性表亿昏,棧峦剔,隊(duì)列等線性結(jié)構(gòu)不同,樹是一種非線性結(jié)構(gòu) 1.樹的定...
    Jack921閱讀 4,442評論 1 31
  • 四. 走向世界之巔——快速排序 你可能會以為歸并排序是最強(qiáng)的算法了角钩,其實(shí)不然吝沫。回想一下递礼,歸并的時(shí)間效率雖然高野舶,但空...
    Leesper閱讀 1,639評論 9 7
  • 問題:為什么需要尊重到每個(gè)細(xì)節(jié)? 我以前一直不太能理解宰衙,為什么書里描寫的那些如此能力超群的人平道,會如此刻意的尊重每一...
    維京閱讀 170評論 0 1