心中有不少心得體會時,不如來好好地做個總結,寫一篇心得體會,如此可以一直更新迭代自己的想法。我們如何才能寫得一篇優質的心得體會呢?那么下面我就給大家講一講心得體會怎么寫才比較好,我們一起來看一看吧。
數據結構心得體會100字篇一
時間過的很快,一轉眼一學期的數據結構課程就已經快要告一段落了,在接觸這么課以前,我覺得編程無非就是會寫代碼就好了。然而事實上數據結構對于程序來說,有著非常重要的地位。隨著計算機應用領域的不斷擴大,非數值計算的問題占據了當今計算機應用的絕大部分,簡單的數據類型已經遠遠不能滿足需要,個數據元素之間的復雜關系已經不是普通數學方程式能夠表達的了,所以數據結構就扮演了十分重要的角色。在學期初,我覺得數據結構還是比較簡單的,但可能由于之前c語言學習對指針掌握的不夠熟練,導致在數據結構中接觸到與指針有關的問題,例如線性表,堆棧,隊列,二叉樹等問題的時候,都會顯得有些吃力。但是在不斷學習數據結構的過程中我也不斷加強了對指針的學習,現在我已經能夠基本掌握指針的相關知識并且能夠熟練運用了。這一學期的學習下來我發現想要學好數據結構有以下幾點經驗{雖然可能我的數據結構學的并不是很好} 1.初步了解算法思想、原理
想要弄清楚一個算法的實現,首先要知道這個算法的大致原理,這是最簡單的一步,也是最基礎的一步,只有明白算法想要干什么,才能弄清楚相應的代碼段是為什么 2.鉆研課本代碼段
對于書上的算法代碼,我們一定要仔細鉆研每一步的具體含義和目的,在此基礎上深入的了解算法的實現過程,而不是一味的四級硬背,不僅無聊,而且效率低下。3.查找各種算法資料
例如排序算法,其實歷史上有很多不同的排序算法,書上只列舉出了一部分,我們通過查閱資料可以發現很多其他不同的排序算法,而且就算是同一個算法,也有很多不同的實現方法,這個過程是一個十分有趣的過程,同時也增長了自己的知識儲備,我們可以根據已有的知識儲備,從而稍加創新,對某個算法可以有自己不同的見解,從而寫出一個“自己”的算法。這對于數據結構的學習是十分重要的 4.堅持上級操作,用實踐檢驗
和所有計算機相關知識的學習一樣,數據結構也是一項需要動手的課程,一味的學習書本知識,埋頭拿筆演算,還不如在電腦上把代碼敲進去自己親自跑一遍,只有這樣才能夠最直接最深入的了解一個代碼,這也是我這個學期也來最深刻的感受。只有多動手,才能找到寫代碼的感覺,才能將各種算法爛熟于心。5.勤于練習,尋找感覺
算法是為了問題服務的,我們在掌握了書本上的算法以后,要去找一些綜合性的題目來鍛煉自己,這些問題通常融合了不同的知識點,例如同時蘊含了排序,二叉樹,堆棧的相關知識,只有在解決問題的過程中,靈活運用所學知識,才能真正檢驗我們是否牢固掌握了書本上的內容。教學建議: 其實李老師您是我大學以來第一個普通話如此標準的老師,所以我已經十分慶幸了,而且我覺得您的講課思路嚴謹,只不過有的時候,您似乎刻意追求語句的嚴謹性,邏輯性,科學性,導致課堂上一句話往往說的很長,很繞,慢慢的都是專業名詞,有時候還稍有些舌頭打結,這會讓我們的思緒無法連貫。比如有一次我在qq上問您希爾排序里面的gap這個點,您給我發了一段26秒的語音,然后我聽了好多遍理了好多次思緒才想明白,當然了這可能和我自己的理解能力較弱有關。我希望老師上課的時候能夠盡量把內容說的再通俗易懂簡單粗暴一些。
以上學習經驗以及教學建議僅僅是個人觀點,老師您教的已經很好了,是我的水平不夠,如有得罪還望見諒
數據結構心得體會100字篇二
心得體會
通過本次課程設計,對圖的概念有了一個新的認識,在學習離散數學的時候,總覺得圖是很抽象的東西,但是在學習了《數據結構與算法》這門課程之后,我慢慢地體會到了其中的奧妙,圖能夠在計算機中存在,首先要捕捉他有哪些具體化、數字化的信息,比如說權值、頂點個數等,這也就說明了想要把生活中的信息轉化到計算機中必須用數字來完整的構成一個信息庫,而圖的存在,又涉及到了頂點之間的聯系。圖分為有向圖和無向圖,而無向圖又是有向圖在權值雙向相等下的一種特例,如何能在計算機中表示一個雙向權值不同的圖,這就是一件很巧妙的事情,經過了思考和老師同學的幫助,我用edges[i][j]=up和edges[j][i]=up就能實現了一個雙向圖信息的存儲。
對整個程序而言,dijkstra算法始終都是核心內容,其實這個算法在實際思考中并不難,也許我們誰都知道找一個路徑最短的方法,及從頂點一步一步找最近的路線并與其直接距離相比較,但是,在計算機中實現這么一個很簡單的想法就需要涉及到很多專業知識,為了完成設計,在前期工作中,基本都是以學習c語言為主,所以浪費了很多時間,比如說在程序中,刪除頂點和增加頂點的模塊中都有和建圖模塊相互重復的函數,但是由于技術的原因,只能做一些很累贅的函數,可見在調用知識點,我沒有掌握好。不過,有了這次課程設計的經驗和教訓,我能夠很清楚的對自己定一個合適的水平,而且在這次課程設計中我學會了運用兩個新的函數sprintf()和包涵在#include
頭文件中的輸入函數。因為課程設計的題目是求最短路徑,本來是想通過算法的實現把這個程序與交通情況相連,但是因為來不及查找各地的信息,所以,這個計劃就沒有實現,我相信在以后有更長時間的情況下,我會做出來的。
1、鞏固和加深了對數據結構的理解,提高綜合運用本課程所學知識的能力。2、培養了我選用參考書,查閱手冊及文獻資料的能力。培養獨立思考,深入研究,分析問題、解決問題的能力。
3、通過實際編譯系統的分析設計、編程調試,掌握應用軟件的分析方法和工程設計方法。
4、通過課程設計,培養了我嚴肅認真的工作作風,逐步建立正確的生產觀念、經濟觀念和全局觀念。
根據我在實習中遇到得問題,我將在以后的學習過程中注意以下幾點:
1、認真上好專業實驗課,多在實踐中鍛煉自己。
2、寫程序的過程中要考慮周到,嚴密。
3、在做設計的時候要有信心,有耐心,切勿浮躁。
4、認真的學習課本知識,掌握課本中的知識點,并在此基礎上學會靈活運用。
5、在課余時間里多寫程序,熟練掌握在調試程序的過程中所遇到的常見錯誤,以便能節省調試程序的時間。
這是一門純屬于設計的科目,它需用把理論變為上機調試。在學習科目的第一節課起,李老師就為我們闡述了它的重要性。它對我們來說具有一定的難度。它是其它編程語言的一門基本學科。
剛開始學的時候確實有很多地方我很不理解,每次上課時老師都會給我們出不同的設計題目,對于我們一個初學者來說,無疑是一個具大的挑戰,撞了幾次壁之后,我決定靜下心來,仔細去寫程序。老師會給我們需要編程的內容一些講解,順著老師的思路,來完成自己的設計,我們可以開始運行自己的程序,可是好多處的錯誤讓人看的可怕,還看不出到底是哪里出現了錯誤,但是程序還是得繼續下去,我多次請教了老師和同學,逐漸能自己找出錯誤,并加以改正。tc里檢查錯誤都是用英文來顯示出來的,經過了這次課程設計,現在已經可以了解很多錯誤在英文里的提示,這對我來說是一個突破性的進步,眼看著一個個錯誤通過自己的努力在我眼前消失,覺得很是開心。此次的程序設計能夠成功,是我和我的同學三個人共同努力作用的結果。在這一段努力學習的過程中,我們的編程設計有了明顯的提高。其實現在想起來,收獲還真是不少,雖然說以前非常不懂這門語言,在它上面花費了好多心血,覺得它很難,是需用花費了大量的時間編寫出來的。現在真正的明白了一些代碼的應用,每個程序都有一些共同點,通用的結構,相似的格式。只要努力去學習,就會靈活的去應用它。
數據結構心得體會100字篇三
心得體會
數據結構是一門純屬于設計的科目,它需用把理論變為上機調試。在學習科目的第一節課起,魯老師就為我們闡述了它的重要性。它對我們來說具有一定的難度。它是其它編程語言的一門基本學科。很多同學都說,數據結構不好學,這我深有體會。剛開始學的時候確實有很多地方我很不理解,每次上課時老師都會給我們出不同的設計題目,對于我們一個初學者來說,無疑是一個具大的挑戰。
我記得有節課上遍歷二叉樹的內容,先序遍歷、中序遍歷、后序遍歷。魯老師說:這節課的內容很重要,不管你以前聽懂沒有,現在認真聽。說實在的,以前上的內容確實沒大聽懂,不過聽了老師的話,我聽得很認真。先序遍歷很簡單,是三個遍歷中,最簡單的。而中序遍歷聽得有點模糊,后序遍歷也半懂半懂,我心想如果老師再講一遍,我肯定能聽懂。后來老師畫了一個二叉樹,抽了同學到黑板上去排序,這個二叉樹看似復雜,不過用先序遍歷來排,并不難。于是我在下面排好了先序,先序遍歷很簡單,我有點得意,老師到位置上點了我上去排中序,上去之后排得一塌糊涂。后來老師又講了一遍,我這才聽懂了,魯老師又安慰我們說,這個二叉樹有點難,中序和后序都不好排,要學懂的確要花點功夫才行。我聽了老師的話,認真做了筆記,回去再看了當天學的內容。第二堂課,老師還是先講的先前的內容,畫了一個簡單的二叉樹,讓我們排序,又叫同學上去分別排出來,老師又點了我的名,叫我起來辨別排中序那兩個同學的答案哪個排正確了,我毫不猶豫的答對了。因為這次的內容,先序遍歷二叉樹、中序遍歷二叉樹、后序遍歷二叉樹,我的確真的懂了,第一次上這個課這么有成就感。漸漸的對這門課有了興趣。我以為永遠都聽不懂這個課,現在,我明白了,只要認真聽,肯下功夫,這個課也沒有什么難的。而數據結構學習的難易程度很大程度上決定于個人的興趣,把一件事情當做任務去做會很痛苦,當做興趣去做會很快樂。也希望老師能看到我的改變,在此也感謝老師的辛勤教導。老師沒有放棄我,幾次點我的名上去,老師一定看得到我的進步。
后來,我每節課都認真聽課,老師雖然沒有點名,但我還是很認真的聽。雙親表示法孩子表示法和孩子兄弟表示法,這些內容我都聽得很明白,差不多每節課都認真聽課。有時我也會在上課空余時間看看以前的內容,所以,第一遍看課本的時候要將概念熟記于心,然后構建知識框架。數據結構包括線性結構、樹形結構、圖狀結構或網狀結構。線性結構包括線性表、棧、隊列、串、數組、廣義表等,棧和隊列是操作受限的線性表,串的數據對象約束為字符集,數組和廣義表是對線性表的擴展:表中的數據元素本身也是一個數據結構。除了線性表以外,棧是重點,因為棧和遞歸緊密相連,遞歸是程序設計中很重要的一種工具。
其中我了解到:棧(stack)是只能在某一端插入和刪除的特殊線性表。它按照后進先出的原則存儲數據,先進入的數據被壓入棧底,最后的數據在棧頂,需要讀數據的時候從棧頂開始彈出數據;隊列一種特殊的線性表,它只允許在表的前端(front)進行刪除操作,而在表的后端(rear)進行插入操作。進行插入的操作端稱為隊尾,進行刪除的操作端稱為隊頭。隊列中沒有元素時,稱為空隊列;鏈表是一種物理存儲單元上非連續、非順序的存儲結構,數據元素的邏輯順序是通過鏈表中的指針鏈接次序實現的。鏈表由一系列結點組成,結點可以在運行時動態生成。每個結點包括兩個部分:一個是存儲數據元素的數據域,另一個是存儲下一個結點地址的指針域。
想著自己報考自考的專業,也會考數據結構這門,這學期就結束了,或多或少都收獲了一些知識。盡管學得還不是很透徹,我相信這對自己的自考會有很大的幫助,所以,即使是結束了這科的內容,我也不會放棄去學習它。