柚子快報(bào)邀請(qǐng)碼778899分享:c語言 初識(shí)數(shù)據(jù)結(jié)構(gòu)和算法
柚子快報(bào)邀請(qǐng)碼778899分享:c語言 初識(shí)數(shù)據(jù)結(jié)構(gòu)和算法
說在前面:?看到這篇文章的友友你好啊,在學(xué)習(xí)的路途中歡迎你的私信、留言,交流互動(dòng)啊,我們一起學(xué)習(xí)、一起進(jìn)步呀!?
目錄
數(shù)據(jù)和結(jié)構(gòu)
解釋含義
數(shù)據(jù)的屬性劃分
數(shù)據(jù)和算法的關(guān)系
算法中復(fù)雜度
時(shí)間復(fù)雜度
空間復(fù)雜度
數(shù)據(jù)和結(jié)構(gòu)
解釋含義
?數(shù)據(jù)就是包含著大量的信息,信息的量堆積上來,就會(huì)使得信息變得雜亂
?結(jié)構(gòu)就是對(duì)數(shù)據(jù)進(jìn)行處理,使得數(shù)據(jù)更加合理
數(shù)據(jù)的屬性劃分
?按照數(shù)據(jù)的屬性,我們可以先把數(shù)據(jù)按照屬性進(jìn)行劃分,例如:整型、浮點(diǎn)型、字符串型等等
數(shù)據(jù)和算法的關(guān)系
?對(duì)數(shù)據(jù)的高效處理就是算法的涵蓋內(nèi)容,如何使用準(zhǔn)確便捷的方法對(duì)龐大的數(shù)據(jù)進(jìn)行處理就需要學(xué)習(xí)算法的能力了,這里也凸顯了學(xué)習(xí)好數(shù)學(xué)的重要性,利用數(shù)學(xué)思維來處理問題,當(dāng)然死磕代碼誰都逃不掉。
?算法的底層邏輯還是數(shù)學(xué),基礎(chǔ)學(xué)科構(gòu)造了底層的邏輯,計(jì)算機(jī)只是一個(gè)輔助工具
算法中復(fù)雜度
?計(jì)算復(fù)雜性理論中的復(fù)雜度,判斷算法的好壞
?復(fù)雜度往往是考察一個(gè)算法是否高效的標(biāo)志
復(fù)雜度分為空間復(fù)雜的和時(shí)間復(fù)雜度,現(xiàn)今計(jì)算機(jī)的性能飛躍式的提升,空間復(fù)雜度往往不會(huì)作為考慮的因素
時(shí)間復(fù)雜度
?時(shí)間復(fù)雜度:指完成一個(gè)算法所需要的時(shí)間,是衡量一個(gè)算法優(yōu)劣的重要參數(shù)。時(shí)間復(fù)雜度越小,說明算法效率越高。
算法的時(shí)間復(fù)雜度是一個(gè)函數(shù)式T(N)
常見的時(shí)間復(fù)雜度量級(jí)有常數(shù)階O(1)、對(duì)數(shù)階O(logN)、線性階O(n)、線性對(duì)數(shù)階O(nlogN)、平方階O(n^2)、立方階O(n^3)、指數(shù)階O(2^n)和階乘階O(n!)等。
大O符號(hào),用于描述函數(shù)漸進(jìn)行為的數(shù)學(xué)符號(hào),時(shí)間復(fù)雜度空間復(fù)雜度都可使用
時(shí)間復(fù)雜度函數(shù)式T(N)中,只保留最?階項(xiàng),去掉那些低階項(xiàng),因?yàn)楫?dāng)N不斷變?時(shí),低階項(xiàng)對(duì)結(jié)果影響越來越?,當(dāng)N?窮?時(shí),就可以忽略不計(jì)了
只要是常量就忽略不計(jì),高階項(xiàng)和低階項(xiàng)在一起時(shí),常??梢詫⒌碗A項(xiàng)舍去
空間復(fù)雜度
?空間復(fù)雜度:空間復(fù)雜度是指完成一個(gè)算法所需要占用的存儲(chǔ)空間,一般是輸入?yún)?shù)的函數(shù)。它也是算法優(yōu)劣的重要度量指標(biāo)??臻g復(fù)雜度越小,算法通常被認(rèn)為越好。
對(duì)于不同性能的電腦來說,編譯環(huán)境、運(yùn)行環(huán)境等都是有差異的,往往性能越高所耗時(shí)間越短
一種粗略的計(jì)算方式:
程序的時(shí)間效率=每條語句的運(yùn)行時(shí)間(不確定的)*運(yùn)行的次數(shù)(確定的)
說在最后:
如何檢查自己的數(shù)據(jù)結(jié)構(gòu)和算法學(xué)習(xí)的程度?
這里可以推薦一個(gè)方法:
把復(fù)雜的數(shù)據(jù)結(jié)合給你的朋友用簡(jiǎn)單的方法講出來讓他理解
柚子快報(bào)邀請(qǐng)碼778899分享:c語言 初識(shí)數(shù)據(jù)結(jié)構(gòu)和算法
推薦閱讀
本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點(diǎn)和立場(chǎng)。
轉(zhuǎn)載請(qǐng)注明,如有侵權(quán),聯(lián)系刪除。