數據結構課程總結

總結是指社會團體、企業單位和個人在自身的某一時期、某一項目或某些工作告一段落或者全部完成後進行回顧檢查、分析評價,從而肯定成績,得到經驗,找出差距,得出教訓和一些規律性認識的一種書面材料,通過它可以正確認識以往學習和工作中的優缺點,因此好好準備一份總結吧。那麼你知道總結如何寫嗎?下面是小編幫大家整理的數據結構課程總結,歡迎大家分享。

數據結構課程總結

數據結構課程總結1

數據結構與算法是計算機程序設計的重要理論技術基礎,它不僅是計算機科學的核心課程,而且也已經成爲其他理工專業的熱門選修課。隨着高級語言的發展,數據結構在計算機的研究和應用中已展現出強大的生命力,它兼顧了諸多高級語言的特點,是一種典型的結構化程序設計語言,它處理能力強,使用靈活方便,應用面廣,具有良好的可移植性。通過學習,先報告如下:

一、數據結構與算法知識點

學期學的《數據結構與算法》這本書共有十一個章節:

第一章的內容主要包括有關數據、數據類型、數據結構、算法、算法實現、C語言使用中相關問題和算法分析等基本概念和相關知識。其中重點式數據、數據類型、數據結構、算法等概念;C語言中則介紹了指針、結構變量、函數、遞歸、動態存儲分配、文件操作、程序測試與調試問題等內容。

第二章主要介紹的是線性邏輯結構的數據在順序存儲方法下的數據結構順序表(包括順序串)的概念、數據類型、數據結構、基本運算及其相關應用。其中重點一是順序表的定義、數據類型、數據結構、基本運算和性能分析等概念和相關知識。二是順序表的應用、包括查找問題(簡單順序查找、二分查找、分塊查找)、排序問題(直接插入排序、希爾排序、冒泡排序、快速排序、直接選擇排序、歸併排序)、字符處理問題(模式匹配)等內容。本章重點和難點在查找和排序問題的算法思想上,6種排序方法的性能比較。

第三章主要介紹的是線性邏輯結構的數據在鏈接存儲方法下數據結構鏈表的相關知識。主要是單鏈表、循環鏈表的數據類型結構、數據結構、基本運算及其實現以及鏈表的相關應用問題,在此基礎上介紹了鏈串的相關知識。在應用方面有多項式的相加問題、歸併問題、箱子排序問題和鏈表在字符處理方面的應用問題等。本章未完全掌握的是循環鏈表的算法問題和C的描述。

第四章介紹在兩種不同的存儲結構下設計的堆棧,即順序棧和鏈棧的相關知識,瞭解堆棧的相關應用,掌握應用堆棧來解決實際問題的思想及方法。本章主要內容是順序棧和鏈棧的概念、數據類型、數據結構定義和基本運算算法及其性能分析。本章堆棧算法思想較爲簡單,所以能較好掌握。

第五章主要介紹順序存儲和鏈接存儲方法下的兩種隊列、順序(循環)隊列和鏈隊列的數據結構、基本運算及其性能分析以及應用。順序隊列(重點是循環隊列)和鏈隊列的概念、數據類型描述、數據結構和基本運算算法及其性能分析等。本章同堆棧有點類似,算法思想較爲簡單,所以能較好掌握;但難點重在循環隊列隊空、隊滿的判斷條件問題。第六章“特殊矩陣、廣義表及其應用”將學習數組、稀疏矩陣和廣義表的基本概念,幾種特殊矩陣的存儲結構及其基本運算,在此基礎上學習特殊矩陣的計算算法與廣義表應用等相關問題。本章的重點是相關數據結構的存儲結構及其基本運算算法。掌握了特殊矩陣的壓縮存儲結構,在該存儲結構下元素的定位方法,理解了稀疏矩陣的計算和廣義表的存儲結構。

第七章“二叉樹及其應用”的知識結構主要是:非線性結構數據二叉樹的定義、性質、邏輯結構、存儲結構及其各種基本運算算法,包括二叉樹的建立、遍歷、線索化等算法。在此基礎上,介紹二叉樹的一些應用問題,包括哈夫曼編碼問題、(平衡)二叉排序樹問題和堆排序問題等。

第八章“樹和森林及其應用”介紹樹和森林的數據結構、基本算法及其性能分析,樹和森林與二叉樹之間的轉換算法等,在此基礎上介紹樹的應用---B-樹,應用B-樹來實現數據元素的動態查找。本章基本掌握樹和森林的概念和性質、數據結構、樹的基本算法及性能分析,樹和二叉樹間的轉換及其算法,並用應用B-樹來實現數據元素的動態查找未能掌握好。

第九章“散列結構及其應用”是邏輯結構“集合型”的數據元素在散列存儲方法下的數據結構及其應用知識內容。主要介紹散列函數的概念、散列結構的概念、散列存儲結構的概念---散列表、散列函數和散列表中解決衝突的處理方法---開放定址法、鏈地址法以及散列表的基本算法及其性能分析。本章概念較爲多,所以掌握不太好。

第十章“圖及其應用”是邏輯結構爲“圖形”的數據結構及其應用知識內容,主要介紹圖的定義和基礎知識,圖的2種存儲結構。圖的基本算法以及圖的.典型應用問題(最小生成樹、最短路徑、拓撲排序和關鍵路徑等)。

二、對各知識點的掌握情況

我對各知識點的掌握情況總結如下:

第一章不太難,能基本掌握。但關係全書的時間性能分析有些未能全部掌握。第二章本章重點和難點在查找和排序問題的算法思想上,6種排序方法的性能比較。本章未掌握的爲希爾排序、快速排序、歸併排序的時間複雜度分析。第三章,對鏈表掌握還好,對其數據結構進行了分析,有循環鏈表,掌握的不是很好,對其中一些用法不熟練。第四章堆棧,本章堆棧算法思想較爲簡單,所以能較好掌握,但表達式計算問題未掌握好的。第五章的循環隊列隊空、隊滿的判斷條件問題掌握的不是很好。第六章的重點是相關數據結構的存儲結構及其基本運算算法。掌握了特殊矩陣的壓縮存儲結構,在該存儲結構下元素的定位方法,理解了稀疏矩陣的計算和廣義表的存儲結構。第七章對二叉樹掌握較好,其概念,存儲,遍歷有很好的掌握。就是對二叉排序樹有點生疏,它的生成算法不是很會。第八章樹樹與二叉樹之間的轉換,森林與二叉樹的轉換算法思想基本掌握。第九章散列的一些知識,沒有深入學習,大概瞭解了散列存儲結構散列表,散列函數,衝突的處理方法。第十章瞭解了圖的逆鄰接表的存儲結構,關鍵路徑求解算法未能掌握好,不能靈活運用圖的不同數據結構和遍歷算法解決複雜的應用問題。

三、學習體會

通過學習數據結構與算法,讓我對程序有了新的認識,也有了更深的理解。同時,也讓我認識到,不管學習什麼,概念是基礎,所有的知識框架都是建立在基礎概念之上的,所以,第一遍看課本要將概念熟記於心,然後構建知識框架。並且,對算法的學習是學習數據結構的關鍵。在第二遍看課本的過程中,要注重對算法的掌握。對於一個算法,讀一遍可能能讀懂,但不可能完全領會其中的思想。掌握一個算法,並不是說將算法背過,而是掌握算法的思想。我們需要的是耐心。每看一遍就會有這一遍的收穫。讀懂算法之後,自己再默寫算法,寫到不會的地方,看看課本想想自己爲什麼沒有想到。對算法的應用上,學習算法的目的是利用算法解決實際問題。會寫課本上已有的算法之後,可以借其思想進行擴展,逐步提高編程能力。

四、對課程教學的建議

1、感覺上課時的氣氛不是很好,雖然大部分人都在聽,可是效果不是很好。所以希望老師能在授課中間能穿插一些活躍課堂氛圍的話題,可以是大家都非常關心的一些內容,這樣既讓大家能在思考之餘有一個放鬆,也能夠提高學生的學習積極性和學習效率。

2、學習的積極性很重要,有時候我們花了很長時間去寫實驗報告,也很認真的去理解去掌握,可是最後實驗報告可能就只得了一個C,抄的人反而得A,這樣的話很容易打擊學生的積極性,在後面的實驗報告中沒動力再去認真寫。所以希望老師能在這方面有所調整。3、雖然講課的時間很緊,但是還是希望老師能在講述知識點的時候能運用實際的調試程序來給我們講解,這樣的話能讓我們對這些內容有更深刻的印象和理解。

數據結構課程總結2

一、知識點概述

1、數據結構和算法

本章作爲全書的導引,全面介紹了相關概念,如數據、數據元素、數據類型以及數據結構的定義。其中,數據結構包括邏輯結構、存儲結構和運算集合。邏輯結構分爲四類:集合型、線性、樹形和圖形結構;數據元素的存儲結構分爲:順序存儲、鏈接存儲、索引存儲和散列存儲四類;最後介紹算法的時間性能分析以及算法的空間性能分析。

2、順序表及其應用

本章主要介紹的是線性邏輯結構的數據在順序存儲下的數據結構表的概念、數據類型、數據結構、基本運算及相關問題

一、主要介紹順序表的定義,基本算法和時間性能的分析;

二、主要介紹一些簡單的查找算法和排序算法

3、鏈表及其應用

本章主要介紹的是線性邏輯結構的數據在鏈接存儲下的數據結構鏈表的相關知識,本章主要介紹單鏈表、循環鏈表的數據類型的定義及一些對數據的操作的算法和時間性能的分析。以及鏈表的應用主要有多項式相加,歸併問題、箱子排序問題等方面。

4、堆棧及其應用

本章介紹了兩種不同的存儲結構下設計的堆棧,即順序棧和鏈棧;分別對順序棧和鏈棧的數據類型定義和對數據的操作比若說取棧頂元素和元素入棧等算法。最後介紹了堆棧的應用如:漢諾塔和火車車廂重排問題。

5、隊列及其應用

本章介紹了的是隊列的定義和邏輯結構、基本算法。隊列也有兩種存儲方式,鏈隊列和順序隊列,其中順序隊列包括順序隊列和順序循環隊列;最後介紹了基數排序問題

6、特殊矩陣、廣義表及其應用

本章介紹了特殊矩陣和廣義表的概念與應用。其中,特殊矩陣包括對稱矩陣、三角矩陣、對角矩陣和稀疏矩陣,書中分別詳細介紹了它們的存儲結構。稀疏矩陣的應用包括轉置和加法運算等。最後介紹了廣義表的相關概念及存儲結構,關於它的應用,課本中舉了m元多項式的表示問題

7、二叉樹及其應用

本章在介紹有關概念時,提到了二叉樹的性質以及兩種特殊的二叉樹:完全二叉樹和滿二叉樹。接着介紹二叉樹的順序存儲和鏈接存儲以及生成算法。重點介紹二叉樹的遍歷算法(遞歸算法、先序、中序和後序遍歷非遞歸算法)和線索二叉樹。二叉樹的應用:基本算法、哈弗曼樹、二叉排序樹和堆排序

8、樹和森林及其應用

樹和森林的概念和性質、數據結構、樹的基本算法及性能分析,樹與二叉樹之間的轉換和森林與二叉樹之間的轉換及其相應的算法。其次還有樹和森林的遍歷和樹的存儲結構,包括雙親表示法,孩子表示法,孩子兄弟表示法。

9、散列結構及其應用

本章主要介紹了:散列結構的概念及其存儲結構、散列函數、兩種衝突處理方法、線性探測散列和鏈地址散列的基本算法以及散列結構的查找性能分析10、圖及其應用

本章主要介紹圖的定義和基礎知識,圖的四種存儲結構,圖的基本算法以及圖的典型應用問題如:最小生成樹,最短路徑,拓撲排序和關鍵路徑等。

二、學習體會

剛接觸這門課時,我卻是以爲這門課就是一門C語言編程課,也看不到學習這門課到底有啥用,無非就是在上一次C語言,但經過一段時間的學習和老師在課堂上的講解,我發現,理想和現實始終都是有差距的,數據結構教會我們我們的不僅僅是單純的編程,還有那一個個算法,教會我們如何通過設計算法來解決某一問題,如何合理的組織數據、高效率的處理數據。學會分析問題,通過設計算法來解決問題。其實只要懂得那些算法的設計思想,一個程序無論採用哪種語言,只要思想正確,一樣可以設計出一個好的算法。三、教學建議

1、建議在上課過程中加大隨堂練習的分量,以便學生能當堂消化課堂上學習的知識,也便於及時瞭解學生對知識點的掌握情況,同時有助於學生保持良好的精神狀態。

2、建議在課時允許的情況下,增加習題課的分量,通過課堂的習題講解,加深對知識點的掌握,同時對各知識點的運用有一個更爲直觀和具體的認識。