數(shù)據(jù)結(jié)構(gòu)與算法的基本概念-創(chuàng)新互聯(lián)

前言

技術(shù)學(xué)得再多,再好還不如將基礎(chǔ)學(xué)扎實(shí)。欠下的遲早是要還的。與其在以后后悔當(dāng)初不好好學(xué),還不如在大學(xué)期間將該學(xué)的知識學(xué)透。《數(shù)據(jù)結(jié)構(gòu)與算法》確實(shí)不好學(xué),但大學(xué)四年下來,還怕啃不下一本書??正是基于這樣的目的,我又重新拿起了數(shù)據(jù)結(jié)構(gòu),但盲目的自學(xué)只會毀了你(效果不大)。老規(guī)矩,學(xué)習(xí)方式還是通過視頻+編程+書籍三管齊下,最后通過博客輸出實(shí)現(xiàn)實(shí)時回顧。希望每天能按質(zhì)按量的學(xué)習(xí)吧?。?!

創(chuàng)新互聯(lián)為客戶提供專業(yè)的成都網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)、程序、域名、空間一條龍服務(wù),提供基于WEB的系統(tǒng)開發(fā). 服務(wù)項(xiàng)目涵蓋了網(wǎng)頁設(shè)計(jì)、網(wǎng)站程序開發(fā)、WEB系統(tǒng)開發(fā)、微信二次開發(fā)、移動網(wǎng)站建設(shè)等網(wǎng)站方面業(yè)務(wù)。
數(shù)據(jù)元素的基本概念? 1.數(shù)據(jù)

數(shù)據(jù)(data)是信息的載體,

2.數(shù)據(jù)元素

數(shù)據(jù)元素是數(shù)據(jù)的基本單位,在計(jì)算機(jī)程序中通常作為一個整體進(jìn)行考慮和處理。而構(gòu)成數(shù)據(jù)元素的不可分割的最小單位稱為數(shù)據(jù)項(xiàng)。

?

3.數(shù)據(jù)結(jié)構(gòu)

數(shù)據(jù)結(jié)構(gòu)是指相互之間存在一定關(guān)系的數(shù)據(jù)元素的集合。數(shù)據(jù)元素是討論數(shù)據(jù)結(jié)構(gòu)時涉及的最小數(shù)據(jù)單位,其中的數(shù)據(jù)項(xiàng)一般不考慮。按照視點(diǎn)的不同,數(shù)據(jù)元素是討論數(shù)據(jù)結(jié)構(gòu)分為邏輯結(jié)構(gòu)和存儲結(jié)構(gòu)。

邏輯結(jié)構(gòu)

根據(jù)元素邏輯關(guān)系的不同分類:

①集合:數(shù)據(jù)元素之間就是"屬于同一集合"

②線性結(jié)構(gòu):數(shù)據(jù)元素之間存在一對一的線性關(guān)系。

③樹結(jié)構(gòu):數(shù)據(jù)元素之間存在一對多的層次關(guān)系。

④圖結(jié)構(gòu):數(shù)據(jù)元素之間存在多對多的層次關(guān)系。

存儲結(jié)構(gòu)

數(shù)據(jù)的存儲結(jié)構(gòu)又成為物理結(jié)構(gòu),是數(shù)據(jù)及邏輯結(jié)構(gòu)在計(jì)算機(jī)中的表示。

通常又兩種存儲結(jié)構(gòu):順序存儲結(jié)構(gòu)和鏈?zhǔn)酱鎯Y(jié)構(gòu)。

順序存儲結(jié)構(gòu)是用一組連續(xù)的存儲單位依次存儲數(shù)據(jù)元素,數(shù)據(jù)元素之間的邏輯關(guān)系由元素的存儲位置來表示。鏈?zhǔn)酱鎯κ怯靡唤M任意的存儲單位存儲數(shù)據(jù)元素,數(shù)據(jù)元素之間的 邏輯關(guān)系用指針表示。

算法的基本概念 1.什么是算法?

算法是對特定問題求解步驟的一種描述,是指令的有限序列。

2.什么是“好”算法

好算法滿足算法的五個特性:

① 正確性 ②健壯性 ③可理解性 ④高效性

算法的描述方式

①自然語言 ?優(yōu)點(diǎn):容易理解。缺點(diǎn):冗長。

②流程圖 ?優(yōu)點(diǎn):直觀易懂。缺點(diǎn):靈活性差。

③程序設(shè)計(jì)語言 ?優(yōu)點(diǎn):能由計(jì)算機(jī)直接執(zhí)行。缺點(diǎn):抽象性差。

④偽代碼 ?優(yōu)點(diǎn):介意自然語言和設(shè)計(jì)語言之間,比較適合描述算法。被稱為“算法語言”或第一語言。

3.算法分析

如何去度量一個算法的效率呢?通常有兩種方法:一種方法是事后統(tǒng)計(jì)法,先將算法實(shí)現(xiàn),然后輸入適當(dāng)?shù)臄?shù)據(jù)運(yùn)行,測算時間和空間開銷。通常我們采用事前分析估計(jì)的方法——漸進(jìn)復(fù)雜度

4.算法的時間復(fù)雜度

為了客觀反映一個算法的執(zhí)行時間,可以用算法中基本語句的執(zhí)行次數(shù)來度量算法的工作量?;菊Z句是執(zhí)行次數(shù)與整個算法的執(zhí)行次數(shù)成正比的語句,基本語句對算法的運(yùn)行時間貢獻(xiàn)大,是算法中最重要的操作。

算法分析舉例

++x;

++x是基本語句,執(zhí)行次數(shù)為1,時間復(fù)雜度為o(1),稱為常量階。

for(i=1;i<=n;i++)
{
   x+=5;

}

x+=5是基本語句,執(zhí)行次數(shù)為n,時間復(fù)雜度為O(n),稱為線性階。

for(j=1;j<=n;j++)
for(i=1;i<=n;i++)
{

  ++x;

}

++x是基本語句,執(zhí)行次數(shù)為n^{2},時間復(fù)雜讀為O(n^{2}),稱為平方階。

for(i=1;i<=n;++i)

?for(j=1;j<=i-1;++j)
??????++x;

解:++x是基本語句,執(zhí)行次數(shù)為:,所以時間復(fù)雜度為O(n2)。分析的策略是從內(nèi)部(或最深層部分)向外展開。

for(i=1;i<=n;i=2*i)

?????????++x;

解:++x是基本語句,設(shè)其執(zhí)行次數(shù)為T(n),則有2T(n)≤n,即T(n)≤log2n,所以時間復(fù)雜度為O(log2n),稱為對數(shù)階

你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧

網(wǎng)頁標(biāo)題:數(shù)據(jù)結(jié)構(gòu)與算法的基本概念-創(chuàng)新互聯(lián)
標(biāo)題鏈接:http://www.muchs.cn/article0/djjjoo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供移動網(wǎng)站建設(shè)外貿(mào)建站、網(wǎng)站設(shè)計(jì)網(wǎng)站收錄、電子商務(wù)、營銷型網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化