數(shù)據(jù)結(jié)構(gòu)期末總結(jié) 數(shù)據(jù)結(jié)構(gòu)期末總結(jié)與反思(3篇)_第1頁
數(shù)據(jù)結(jié)構(gòu)期末總結(jié) 數(shù)據(jù)結(jié)構(gòu)期末總結(jié)與反思(3篇)_第2頁
數(shù)據(jù)結(jié)構(gòu)期末總結(jié) 數(shù)據(jù)結(jié)構(gòu)期末總結(jié)與反思(3篇)_第3頁
數(shù)據(jù)結(jié)構(gòu)期末總結(jié) 數(shù)據(jù)結(jié)構(gòu)期末總結(jié)與反思(3篇)_第4頁
數(shù)據(jù)結(jié)構(gòu)期末總結(jié) 數(shù)據(jù)結(jié)構(gòu)期末總結(jié)與反思(3篇)_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

本文格式為Word版,下載可任意編輯——數(shù)據(jù)結(jié)構(gòu)期末總結(jié)數(shù)據(jù)結(jié)構(gòu)期末總結(jié)與反思(3篇)工作學(xué)習(xí)中一定要善始善終,只有總結(jié)才標(biāo)志工作階段性完成或者完全的終止。通過總結(jié)對工作學(xué)習(xí)進行回想和分析,從中找出經(jīng)驗和教訓(xùn),引出規(guī)律性認(rèn)識,以指導(dǎo)今后工作和實踐活動。大家想知道怎么樣才能寫一篇比較優(yōu)質(zhì)的總結(jié)嗎?以下是我為大家收集的總結(jié)范文,僅供參考,大家一起來看看吧。

數(shù)據(jù)結(jié)構(gòu)期末總結(jié)數(shù)據(jù)結(jié)構(gòu)期末總結(jié)與反思篇一

在這次課程設(shè)計當(dāng)中,我了解到了我的不足,如算法的不完善、不細(xì)心和耐心不是很好等等。不細(xì)心的我在調(diào)試程序時,老是由于某個書寫錯誤導(dǎo)致錯誤;對這些錯誤,我不得不花大量的時間去更正,并且還要重復(fù)檢查是否出現(xiàn)雷同的錯誤而導(dǎo)致程序不能運行。但是通過這次課程設(shè)計,我的這些缺點有些改善。我在寫新的程序時,首先要考慮的深入一點、細(xì)心一點,這樣要修改程序的時間就會少好多。并且也不會由于自己不細(xì)心而導(dǎo)致的浪費時間的狀況出現(xiàn)。

在進行程序設(shè)計時,要注意想好思路。即要有恰當(dāng)模塊名、變量名、常量名、子程序名等。將每個功能的模塊,即函數(shù)名要明了的表述出來,使用戶能夠一目了然此程序的功能。當(dāng)然適當(dāng)?shù)慕o寫解釋,也是便利用戶的理解。還有在編寫程序時要注意對程序的適當(dāng)分派,便于用戶看懂程序,也便于自己檢查城市。但是完成任何一個較大的程序,都需要把握一定的編程基礎(chǔ),需要不斷的摸索和求知過程,這樣對自己編程能力的提高有較大的幫助。當(dāng)然,任何程序必需經(jīng)過計算機的調(diào)試,看是否調(diào)試成功,發(fā)現(xiàn)錯誤,一個個,一步步去解決,這樣就能從錯誤中進步。

通過課程設(shè)計加強了我的動手能力,以及提升了局部和統(tǒng)一考慮問題的思維方式?;叵肫鸫舜握n程設(shè)計,至今我仍感慨頗多,的確,從從拿到題目到完成整個編程,從理論到實踐,在整整半個月的日子里,可以學(xué)到好多好多的的東西,同時不僅可以穩(wěn)定了以前所學(xué)過的知識,而且學(xué)到了好多在書本上所沒有學(xué)到過的知識。通過這次課程設(shè)計使我懂得了理論與實際相結(jié)合是很重要的,只有理論知識是遠遠不夠的,只有把所學(xué)的理論知識與實踐相結(jié)合起來,從理論中得出結(jié)論,才能真正為社會服務(wù),從而提高自己的實際動手能力和獨立思考的能力。在設(shè)計的過程中遇到問題,可以說得是困難重重,這終究第一次做的,難免會遇到過各種各樣的問題,同時在設(shè)計的過程中發(fā)現(xiàn)了自己的不足之處,對以前所學(xué)過的知識理解得不夠深刻,把握得不夠穩(wěn)固,譬如說結(jié)構(gòu)體通過這次課程設(shè)計之后,一定把以前所學(xué)過的知識重新溫故。

通過這次的課程設(shè)計,我學(xué)到了怎么樣從一個實際問題出發(fā),建立模型,找到相應(yīng)的存儲結(jié)構(gòu)和實現(xiàn)方法,實際運行,反復(fù)調(diào)試和修改,最終實現(xiàn)功能。在程序設(shè)計方法以及上機操作等基本技能和科學(xué)作風(fēng)方面受到比較系統(tǒng)和嚴(yán)格的訓(xùn)練,學(xué)會數(shù)據(jù)組織的方法,把現(xiàn)實世界中的實際問題在計算機內(nèi)部表示出來并用軟件解決問題,培養(yǎng)了良好的程序設(shè)計技能。

在這次課程設(shè)計中,得到了好多同學(xué)的幫助以及老師的指導(dǎo),在此要表達我真誠的謝意!

數(shù)據(jù)結(jié)構(gòu)期末總結(jié)數(shù)據(jù)結(jié)構(gòu)期末總結(jié)與反思篇二

樹是由n個結(jié)點組成的有限集合,且只有一個結(jié)點是樹的根結(jié)點,其余結(jié)點不相交。

樹的規(guī)律表達方法:樹形表示法、文氏圖表示法、凹入表示法、括號表示法。

1、結(jié)點的度與樹的度:樹中某個結(jié)點的子樹的個數(shù)稱為該結(jié)點的度,樹中所有結(jié)點的度中最大的為樹的度。

2、分支結(jié)點與葉子結(jié)點:度為0的是葉子結(jié)點,度為1的為單支結(jié)點、度為2的為雙分支結(jié)點

3、路徑長度是該路徑所通過的結(jié)點數(shù)目減1

4、孩子結(jié)點、雙親結(jié)點、兄弟結(jié)點

5、結(jié)點層次(從樹根開始定義),樹中結(jié)點最大的層次稱為樹的高度或樹的深度

6、有序樹和無序樹

7、森林:n個互不相交的樹稱為森林,把多個子樹的根去掉就是森林

數(shù)據(jù)結(jié)構(gòu)期末總結(jié)數(shù)據(jù)結(jié)構(gòu)期末總結(jié)與反思篇三

數(shù)據(jù)結(jié)構(gòu)心得體會

數(shù)據(jù)結(jié)構(gòu)學(xué)習(xí)總結(jié)

通過一學(xué)期對《數(shù)據(jù)結(jié)構(gòu)與算法》的學(xué)習(xí),大約的了解了基本的數(shù)據(jù)結(jié)構(gòu)和相應(yīng)的一些算法。下面總結(jié)一下自己一個學(xué)期學(xué)習(xí)的收獲和心得。數(shù)據(jù)結(jié)構(gòu)是什么:

數(shù)據(jù)結(jié)構(gòu)是計算機存儲、組織數(shù)據(jù)的方式。數(shù)據(jù)結(jié)構(gòu)是指相互之間存在一種或多種特定關(guān)系的數(shù)據(jù)元素的集合。尋常狀況下,精心選擇的數(shù)據(jù)結(jié)構(gòu)可以帶來更高的運行或者存儲效率。數(shù)據(jù)結(jié)構(gòu)往往同高效的檢索算法和索引技術(shù)有關(guān)。數(shù)據(jù)結(jié)構(gòu)重要性:

一般認(rèn)為,一個數(shù)據(jù)結(jié)構(gòu)是由數(shù)據(jù)元素依據(jù)某種規(guī)律聯(lián)系組織起來的。對數(shù)據(jù)元素間規(guī)律關(guān)系的描述稱為數(shù)據(jù)的規(guī)律結(jié)構(gòu);數(shù)據(jù)必需在計算機內(nèi)存儲,數(shù)據(jù)的存儲結(jié)構(gòu)是數(shù)據(jù)結(jié)構(gòu)的實現(xiàn)形式,是其在計算機內(nèi)的表示;此外探討一個數(shù)據(jù)結(jié)構(gòu)必需同時探討在該類數(shù)據(jù)上執(zhí)行的運算才有意義。一個規(guī)律數(shù)據(jù)結(jié)構(gòu)可以有多種存儲結(jié)構(gòu),且各種存儲結(jié)構(gòu)影響數(shù)據(jù)處理的效率。在大量類型的程序的設(shè)計中,數(shù)據(jù)結(jié)構(gòu)的選擇是一個基本的設(shè)計考慮因素。大量大型系統(tǒng)的構(gòu)造經(jīng)驗說明,系統(tǒng)實現(xiàn)的困難程度和系統(tǒng)構(gòu)造的質(zhì)量都嚴(yán)重的依靠于是否選擇了最優(yōu)的數(shù)據(jù)結(jié)構(gòu)。大量時候,確定了數(shù)據(jù)結(jié)構(gòu)后,算法就簡單得到了。有些時候事情也會反過來,我們根據(jù)特定算法來選擇數(shù)據(jù)結(jié)構(gòu)與之適應(yīng)。不管哪種狀況,選擇適合的數(shù)據(jù)結(jié)構(gòu)都是十分重要的。選擇了數(shù)據(jù)結(jié)構(gòu),算法也隨之確定,是數(shù)據(jù)而不是算法是系統(tǒng)構(gòu)造的關(guān)鍵因素。這種洞見導(dǎo)致了大量種軟件設(shè)計方法和程序設(shè)計語言的出現(xiàn),面向?qū)ο蟮某绦蛟O(shè)計語言就是其中之一。

常見的數(shù)據(jù)結(jié)構(gòu):1.順序表:

定義:順序表是在計算機內(nèi)存中以數(shù)組的形式保存的線性表,是指用一組地址連續(xù)的存儲單元依次存儲數(shù)據(jù)元素的線性結(jié)構(gòu)。線性表采用順序存儲的方式存儲就稱之為順序表。順序表是將表中的結(jié)點依次存放在計算機內(nèi)存中一組地址連續(xù)的存儲單元中。

基本運算:

置表空:sqlsetnull(l)判表滿:sqlempty(l)

求表長:sqllength(l)插入:sqlinsert(l,i,x)按序號取元素:sqlget(l,i)刪除:sqldelete(l,i)按值查找:sqllocate(l,x)2.鏈表

定義:鏈表是一種物理存儲單元上非連續(xù)、非順序的存儲結(jié)構(gòu),數(shù)據(jù)元素的規(guī)律順序是通過鏈表中的指針鏈接次序?qū)崿F(xiàn)的。鏈表由一系列結(jié)點(鏈表中每一個元素稱為結(jié)點)組成,結(jié)點可以在運行時動態(tài)生成。每個結(jié)點包括兩個部分:一個是存儲數(shù)據(jù)元素的數(shù)據(jù)域,另一個是存儲下一個結(jié)點地址的指針域。相比于線性表順序結(jié)構(gòu),鏈表比較便利插入和刪除操作。分類:單鏈表—用一組地址任意的存儲單元存放線性表中的數(shù)據(jù)元素。

循環(huán)鏈表—循環(huán)鏈表是另一種形式的鏈?zhǔn)酱尜A結(jié)構(gòu)。它的特點是表中最終一個結(jié)點的指針域指向頭結(jié)點,整個鏈表形成一個環(huán)?;具\算:建立鏈表,插入節(jié)點,刪除節(jié)點。3.堆棧

定義:堆棧都是一種數(shù)據(jù)項按序排列的數(shù)據(jù)結(jié)構(gòu),只能在一端(稱為棧頂(top))對數(shù)據(jù)項進行插入和刪除。要點:堆:順序隨意棧:后進先出(last-in/first-out)。

基本算法:

置空棧:initstack(s)判??眨簊tackempty(s)

判棧滿:stackfull(s)取棧頂元素:gettop(s)

入棧:push(s)出棧:pop(s)4.隊列

定義:隊列是一種特別的線性表,它只允許在表的前端(front)進行刪除操作,而在表的后端(rear)進行插入操作。進行插入操作的端稱為隊尾,進行刪除操作的端稱為隊頭。隊列中沒有元素時,稱為空隊列。在隊列這種數(shù)據(jù)結(jié)構(gòu)中,最先插入的元素將是最先被刪除的元素;反之最終插入的元素將最終被刪除的元素,因此隊列又稱為“先進先出〞(fifo—firstinfirstout)的線性表。

分類:順序隊列;鏈隊;

基本運算:初始化隊列qini(q)入隊qadd(q,x)

出隊qdel(q,x)判斷隊列是否為qempty(q)

判斷隊列是否為滿qfull(q)5.特別矩陣

分類:對陣矩陣;三角矩陣;稀疏矩陣;6.二叉樹定義:二叉樹是每個節(jié)點最多有兩個子樹的有序樹。尋常子樹被稱作“左子樹〞(leftsubtree)和“右子樹〞(rightsubtree)。二叉樹的每個結(jié)點至多只有二棵子樹(不存在度大于2的結(jié)點),二叉樹的子樹有左右之分,次序不能顛倒。二叉樹的第i層至多有2的i-1次方個結(jié)點;深度為k的二叉樹至多有2^(k)-1個結(jié)點;對任何一棵二叉樹t,假使其終端結(jié)點數(shù)(即葉子結(jié)點數(shù))為n0,度為2的結(jié)點數(shù)為n2,則n0=n2+1。

(1)完全二叉樹——若設(shè)二叉樹的高度為h,除第h層外,其它各層(1~h-1)的結(jié)點數(shù)都達到最大個數(shù),第h層有葉子節(jié)點,并且葉子節(jié)點都是從左到右依次排布,這就是完全二叉樹。

(2)滿二叉樹——除了葉結(jié)點外每一個結(jié)點都有左右子葉且葉結(jié)點都處在最底層的二叉樹,。

(3)深度——二叉樹的層數(shù),就是高度。

性質(zhì):

(1)在二叉樹中,第i層的結(jié)點總數(shù)不超過2^(i-1);

(2)深度為h的二叉樹最多有2^h-1個結(jié)點(h=1),最少有h個結(jié)點;(3)對于任意一棵二叉樹,假使其葉結(jié)點數(shù)為n0,而度數(shù)為2的結(jié)點總數(shù)為n2,則n0=n2+1;

(4)具有n個結(jié)點的完全二叉樹的深度為int(log2n)+1

(5)有n個結(jié)點的完全二叉樹各結(jié)點假使用順序方式存儲,則結(jié)點之間有如下關(guān)系:若i為結(jié)點編號則假使i1,則其父結(jié)點的編號為i/2;假使2*i=n,則其左兒子(即左子樹的根結(jié)點)的編號為2*i;若2*in,則無左

兒子;假使2*i+1=n,則其右兒子的結(jié)點編號為2*i+1;若2*i+1n,則無右兒子。

(6)給定n個節(jié)點,能構(gòu)成h(n)種不同的二叉樹。h(n)為卡特蘭數(shù)的第n項。h(n)=c(n,2*n)/(n+1)。

(7)設(shè)有i個枝點,i為所有枝點的道路長度總和,j為葉的道路長度總和j=i+2i。

二叉樹遍歷:

遍歷是對樹的一種最基本的運算,所謂遍歷二叉樹,就是按一定的規(guī)則和順序走遍二叉樹的所有結(jié)點,使每一個結(jié)點都被訪問一次,而且只被訪問一次。由于二叉樹是非線性結(jié)構(gòu),因此,樹的遍歷實質(zhì)上是將二叉樹的各個結(jié)點轉(zhuǎn)換成為一個線性序列來表示。設(shè)l、d、r分別表示遍歷左子樹、訪問根結(jié)點和遍歷右子樹,則對一棵二叉樹的遍歷有三種狀況:dlr(稱為先根次序遍歷),ldr(稱為中根次序遍歷),lrd(稱為后根次序遍歷)。

(1)前序遍歷訪問根;按前序遍歷左子樹;按前序遍歷右子樹(2)中序遍歷按中序遍歷左子樹;訪問根;按中序遍歷右子樹(3)后序遍歷按后序遍歷左子樹;按后序遍歷右子樹;訪問根

(4)層次遍歷即依照層次訪問,尋常用隊列來做。訪問根,訪問子女,再訪問子女的子女(越往后的層次越低)(兩個子女的級別一致)。7.散列

定義:若結(jié)構(gòu)中存在和關(guān)鍵字k相等的記錄,則必定在f(k)的存儲位置上。由此,不需比較便可直接取得所查記錄。稱這個對應(yīng)關(guān)系f為散列函數(shù)(hashfunction),按這個思想建立的表為散列表。

散列函數(shù):直接定址法;除留余數(shù)法;數(shù)字分析法;平方取中法;折疊法。沖突處理方法:開放地址法(線性探測再散列,二次探測再散列,偽隨機探測再散列)鏈地址法。8.圖

定義:一種較線性表和樹更為繁雜的數(shù)據(jù)結(jié)構(gòu)。存儲結(jié)構(gòu):鄰接矩陣;鄰接表;逆鄰接表;十字鏈表;鄰接多重表。圖的遍歷:

深度優(yōu)先遍歷:深度優(yōu)先遍歷的思想類似于樹的先序遍歷。其遍歷過程可以描述為:從圖中某個頂點v出發(fā),訪問該頂點,然后依次從v的未被訪問的鄰接點出發(fā)繼續(xù)深度優(yōu)先遍歷圖中的其余頂點,直至圖中所有與v有路徑相通的頂點都被訪問完為止。

廣度優(yōu)先遍歷:對圖的廣度優(yōu)先遍歷方法描述為:從圖中某個頂點v出發(fā),在訪問該頂點v之后,依次訪問v的所有未被訪問過的鄰接點,然后再訪問每個鄰接點的鄰接點,且訪問順序應(yīng)保持先被訪問的頂點其鄰接點也優(yōu)先被訪問,直到圖中的所有頂點都被訪問為止。下面是對一個無向圖進行廣度優(yōu)先遍歷的過程。

查找算法

原理是讓關(guān)鍵字與隊列中的數(shù)從第一個開始逐個比較,直到找出與給定關(guān)鍵字一致的數(shù)為止。

否則利用中間位置記錄將表分成前、后兩個子表,假使中間位置記錄的關(guān)鍵字大于查找關(guān)鍵字,則進一步查找前一子表,否則進一步查找后一子表。重復(fù)以上過程,直到找到滿足條件的記錄,使查找成功,或直到子表不存在為止,此時查找不成功。

分:先對索引表進行二分查找或順序查找,以確定待查記錄在哪一塊中;然后,在已確定的塊中用順序法進行查找。4.二叉排序樹:

定義:二叉排序樹(binarysorttree)又稱二叉查找樹。它或者是一棵空樹;或者是具有以下性質(zhì)的二叉樹:(1)若左子樹不空,則左子樹上所有結(jié)點的值均小于它的根結(jié)點的值;(2)若右子樹不空,則右子樹上所有結(jié)點的值均大于它的根結(jié)點的值;(3)左、右子樹也分別為二叉排序樹;

查找:若根結(jié)點的關(guān)鍵字值等于查找的關(guān)鍵字,成功。否則,若小于根結(jié)點的關(guān)鍵字值,遞歸查左子樹。若大于根結(jié)點的關(guān)鍵字值,遞歸查右子樹。若子樹為空,查找不成功。

排序算法:

是穩(wěn)定的排序方法。插入算法把要排序的數(shù)組分成兩部分:第一部分包含了這個數(shù)組的所有元素,但將最終一個元素除外,而其次部分就只包含這一個元素。在第一部分排序后,再把這個最終元素插入到此刻已是

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論