數據結構課程總結

數據結構課程總結 篇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、建議在課時允許的情況下,增加習題課的分量,通過課堂的習題講解,加深對知識點的掌握,同時對各知識點的運用有一個更為直觀和具體的認識。

數據結構課程總結 篇3

一、分享交流的內容

1、分享內容的價值性

個別化分享的內容很多,但是首先應該做一下價值的判斷,怎樣的分享內容是有價值的,是值得分享的。作為教師在分享交流這一環節上,不應該趨向於一種模式化的“套路”,如:幼兒是否能遵守遊戲規則,是否能堅持到底,是否能有效地使用材料等等。二是分享交流的內容沒有重點和一定的提升,都是泛泛而談。如:“你今天在哪裡玩的?玩了些什麼?”重複性的語言讓孩子們覺得無趣,連我們教師自己也覺得不會分享交流了。再就是“獨角戲”,老師一個人在問,一個人在回答,認為自己所見所想就是孩子的、就是有價值的,其實不然,多給孩子一些時間、一些交流才是真正的平等和互動,才是真正有價值的。

2、分享內容的挑戰性

個別化內容的層次性也要求孩子在個別化的活動中必然要面臨一定的挑戰。

如:在”動物園“的主題里,理髮店裡投放了為獅子貼頭髮,而第一層次已是簡單的貼上,第二個層次則是將頭髮按線條剪下。對於小班下學期的幼兒來說剪刀的運用以幼兒的協調性還是不夠靈敏,但是看到了班級里年齡較小的幼兒在嘗試剪出又長又直的線條時,我將它放在了分享交流中,對於大部分的幼兒來說,當他們在分享的過程中感受到原來每個人都是可以去嘗試去挑戰的,從而讓孩子們勇於去操作嘗試難度較大的學習內容。

3、分享內容的創造性

教師在個別化的巡迴指導中發現幼兒在操作材料時出現了一些新方法、新結果時,可以把這個新的方法、結果作為分享的內容。如:在分享“甜甜屋”製作的新產品時,教師可以引導孩子將新產品蛋糕的製作方法分享給大家,還可以說說和以前做的有什麼不一樣的地方。並用激勵性的語言“下次你們再去試一試”引導和鼓勵他們再次嘗試與發現。

二、分享交流的方法

1、討論交流法

小班的分享交流中最常用到的方法就是討論交流的方法,師生間的交流、生生間的交流,讓幼兒把個體的學習經驗轉化為集體的學習內容。如”在動物園”的主題背景下,孩子們展開了給動物貼上皮毛的個別化學習。在這個分享交流中,教師問道:今天給動物穿衣服的學習中,你有什麼好辦法穿的更快?接下來,大家通過討論交流,有的幼兒說:先把老虎、斑馬的衣服這些很簡單的衣服穿起來,然後再給其他的動物穿衣服。有的幼兒說:“兩個人玩,把這些動物分開來,給他們穿衣服。”還有的說:“如果實在想不出來,可以看看驗證的圖片再穿衣服。”教師回應道:“是的,大家想出了這么的辦法,都是可以讓動物很快的穿上衣服的,那你還有什麼好辦法,歡迎你在下次的交流中分享給大家。”通過簡單的討論交流,孩子們將自己的各種好辦法分享給了大家,也使得下一次在個別化學習中的人有了一些寶貴的遊戲經驗。

2、再現局部遊戲情景

小班幼兒的思維是具體形象的,因此,直觀的重現情景更能讓孩子去理解去學習。如,在我們班“理髮店”遊戲中的理髮師,他熱情、有禮貌,還能為等待的顧客提供書籍和飲料,滿足大家的需求,在遊戲講評時,我就布置理髮店場景請該幼兒示範他是如何招待顧客、如何為顧客理髮的,並組織幼兒講評,他好在什麼地方,你還可以怎樣為大家服務。這樣不僅讓個別不清楚怎樣理髮的、怎樣按照影子擺放理髮用品的幼兒,清楚並直觀的了解和學習。

3、作品分析與展示

作品分析與展示的方法比較適合於建構、手工製作、探索等個別化的學習中。如:在“動物園”的主題下,教師在分享和交流中可以請幼兒將它的建構作品展示給大家,以及引導孩子們給予一定的意見和建議,幫助他的作品的進一步的提升又如在“春天”的主題下,小花園種花的作品也可以在分享交流的時候進行分析和展示,具體形象的將學習的經驗進行分享和交流。

4、鼓勵激勵法

幼兒是需要鼓勵的,特別的是小班的幼兒,當幼兒在個別化活動中進行了探索、學習後,教師要為幼兒創設一個輕鬆、自由的分享交流的環境,提供幼兒交流分享的平台,注重幼兒交流體驗與收穫,分享快樂與成功,並把有些關鍵性經驗加以提升。如:我經常運用鼓勵性的語言,“你給獅子理的頭髮真好看,每一根都卷卷的!”“你敲的節奏真好聽,我真喜歡”等,鼓勵幼兒堅持學習,創造性的學習,有始有終地完成一項任務。又如“他給動物造得房子真高!這樣可噢以住好多的動物朋友啦!”,這是激勵幼兒學習壘高技能,使手眼活動更協調。除了運用鼓勵的話語外我還運用激勵的方法。對那些具有發展價值,而一時尚未引起幼兒興趣的個別化內容,可通過老師的引導和啟發,激起幼兒參與活動的興趣。通過老師在分享交流中的鼓勵,使得孩子擁有了在個別化學習中所有的自信。

5、提前的預約

分享交流中很大一部分交流的互動都是現場進行,而小班的孩子在分享交流中語言的組織能力還是欠缺的,很少一部分幼兒能夠流利大膽的介紹自己的作品以及自己在個別化中玩到的內容。因此,教師可以根據在幼兒操作時的精彩的表現,悄悄和他進行提前預約,讓他除了有心理上的準備也將自己的學習經驗、以及所有的自信展現給大家。如:教師在甜甜屋看到幼兒製作的糖果的過程非常的認真,並且能按照圖示的步驟完成。教師可以悄悄的對他說:“這么好看的糖果一定很好吃,你願意一會把做它的方法分享給大家么?”這樣在分享時,當他自信的拿出他所做的糖果時,他會把方法非常神奇的分享給大家。

三、分享交流的時機

分享交流一定是個別化學習之後么?答案是否定的!何時組織分享,這也應靈活的,除了在活動最後的時候,也可以在活動的開始或者正在進行時等。如:在活動開始的時候進行交流,大多數都是為活動而作準備。如:上一次遊戲情況回顧、個別化里新投放的材料、場景的介紹、以及對部分幼兒活動前的提醒和激勵等,以幫助幼兒更有目的、有計畫地投入活動。

又如:個別化學習較多體現了幼兒個性化的活動過程,而這個過程是需要大家盡心分享的。集體講評人數眾多,小班幼兒的堅持性的特點,幼兒發表感受機會較少,因此可以將小組的式的講評放在活動進行中。在活動進行中的分享和交流它可以是隨時的,擇機的講評,也可以是同一個別化內容的玩伴,它的特點就是時間比較短,又不會打擾其他幼兒同時也會讓幼兒獲得更多。

當然,一個好的成功的交流分享不僅僅要考慮到分享的內容、方法、時機,還會涉及到分享的範圍、方式等等,這些都值得我們教師在實踐中進一步的進行學習、探究和總結。