靈感範文站

數據結構棧的心得體會多篇

數據結構棧的心得體會多篇

數據結構棧的心得體會篇1

本次課程設計,使我對《數據結構》這門課程有了更深入的理解。《數據結構》是一門實踐性較強的課程,爲了學好這門課程,必須在掌握理論知識的同時,加強上機實踐。

我的課程設計題目是線索二叉樹的運算。剛開始做這個程序的時候,感到完全無從下手,甚至讓我覺得完成這次程序設計根本就是不可能的,於是開始查閱各種資料以及參考文獻,之後便開始着手寫程序,寫完運行時有很多問題。特別是實現線索二叉樹的刪除運算時很多情況沒有考慮周全,經常運行出現錯誤,但通過同學間的幫助最終基本解決問題。

在本課程設計中,我明白了理論與實際應用相結合的重要性,並提高了自己組織數據及編寫大型程序的能力。培養了基本的、良好的程序設計技能以及合作能力。這次課程設計同樣提高了我的綜合運用所學知識的能力。並對vc有了更深入的瞭解。《數據結構》是一門實踐性很強的課程,上機實習是對學生全面綜合素質進行訓練的一種最基本的方法,是與課堂聽講、自學和練習相輔相成的、必不可少的一個教學環節。上機實習一方面能使書本上的知識變“活”,起到深化理解和靈活掌握教學內容的目的;另一方面,上機實習是對學生軟件設計的綜合能力的訓練,包括問題分析,總體結構設計,程序設計基本技能和技巧的訓練。此外,還有更重要的一點是:機器是比任何教師更嚴厲的檢查者。因此,在“數據結構”的學習過程中,必須嚴格按照老師的要求,主動地、積極地、認真地做好每一個實驗,以不斷提高自己的編程能力與專業素質。

通過這段時間的課程設計,我認識到數據結構是一門比較難的課程。需要多花時間上機練習。這次的程序訓練培養了我實際分析問題、編程和動手能力,使我掌握了程序設計的基本技能,提高了我適應實際,實踐編程的能力。

總的來說,這次課程設計讓我獲益匪淺,對數據結構也有了進一步的理解和認識。

數據結構棧的心得體會篇2

本學期開設的《數據結構基礎》課程已經告一段落,現就學習體會進行學習總結

這是一門純屬於設計的科目,它需用把理論變爲上機調試。剛開始學的時候確實有很多地方我很不理解,每次上課時老師都會給我們出不同的設計題目,對於我們一個初學者來說,無疑是一個具大的挑戰,撞了幾次壁之後,我決定靜下心來,仔細去寫程序。老師會給我們需要編程的內容一些講解,順着老師的思路,來完成自己的設計,我們可以開始運行自己的程序。

這門課結束之後,我總結了學習中遇到的一些問題,最爲突出的,書本上的知識與老師的講解都比較容易理解,但是當自己採用剛學的知識點編寫程序時卻感到十分棘手,有時表現在想不到適合題意的算法,有時表現在算法想出來後,只能將書本上原有的程序段謄寫到自己的程序中再加以必要的連接以完成程序的編寫。剛開始學的時候確實有很多地方我很不理解,每次上上機課時老師都會給我們出不同的設計題目,對於我們一個初學者來說,無疑是一個具大的挑戰,撞了幾次壁之後,我決定靜下心來,仔細去寫程序。老師會給我們需要編程的內容一些講解,順着老師的思路,來完成自己的設計,我們可以開始運行自己的程序,可是好多處的錯誤讓人看的可怕,還看不出到底是哪裏出現了錯誤,但是程序還是得繼續下去,我多次請教了老師和同學,逐漸能自己找出錯誤,並加以改正。tc裏檢查錯誤都是用英文來顯示出來的,經過了這次課程設計,現在已經可以瞭解很多錯誤在英文裏的提示,這對我來說是一個突破性的進步,眼看着一個個錯誤通過自己的努力在我眼前消失,覺得很是開心。此次的程序設計能夠成功,是我和我的同學三個人共同努力作用的結果。在這一段努力學習的過程中,我們的編程設計有了明顯的提高。

其實現在想起來,收穫還真是不少,雖然說以前非常不懂這門語言,在它上面花費了好多心血,覺得它很難,是需用花費了大量的時間編寫出來的。現在真正的明白了一些代碼的應用,每個程序都有一些共同點,通用的結構,相似的格式。只要努力去學習,就會靈活的去應用它。

以上便是我對《數據結構基礎》這門課的學習總結,我會抓緊時間將沒有吃透的知識點補齊,克服學習中遇到的難關,在打牢基礎的前提下向更深入的層面邁進!

數據結構棧的心得體會篇3

做了一個星期的程序設計終於做完了,在這次程序設計課中,真是讓我獲益匪淺,我突然發現寫程序還挺有意思的。

由於上學期的c語言跟這學期的數據結構都算不上真正的懂,對於書上的稍微難點的知識就是是而非的,所以我只是對老師的程序理解,我也試着去改變了一些變量,自己也儘量多的去理解老師做程序的思路。當我第一天坐在那裏的時候,我就不知道該做些什麼,後來我只有下來自己看了一遍書來熟悉下以前學過的知識。

通過這次的程序設計,發現一個程序設計就是算法與數據結構的結合體,自己也開始對程序產生了前所未有的興趣,以前偷工減料的學習也不可能一下子寫出一個程序出來,於是我就認真看老師寫的程序,發現我們看懂了一個程序其實不難,難的是對於一個程序的思想的理解,我們要掌握一個算法,不僅僅限於讀懂,主要的是要理解老師的思路,學習老師的解決問題的方法。

這次試驗中,我發現書本上的知識是一個基礎,但是我基礎都沒掌握,更別說寫出一個整整的程序了。自己在寫程序的時候,也發現自己的知識太少了,特別是基礎知識很多都是模模糊糊的一個概念,沒有落實到真正的程序,所以自己寫的時候也感到萬分痛苦,基本上涉及一個知識我就會去看看書,對於書本上的知識沒掌握好。在飯後閒暇時間我也總結了一下,自己以前上課也認真的聽了,但是還是寫不出來,這主要歸結於自己的練習太少了,而且也總是半懂就不管了。在改寫老師的程序中也出現了很多的問題,不斷的修改就是不斷的學習過程,當我們全身心的投入其中時,實際上是一件很有樂趣的事情。對於以後的學習有了幾點總結:第一、熟記各種數據結構類型,定義、特點、基本運算(分開點一點也沒多少東西,難度不大,但是基本);第二、各種常用的排序算法,如冒泡排序、堆排序……,這些是必考的內容,分數不會少於20%;第三,多做習題,看題型,針對題型來有選擇複習;數據結構看上去很複雜,但你靜下心來把書掃上幾遍,分解各個知識點,這一下來,學數據結構的思路就會很清晰了。

數據結構棧的心得體會篇4

本次課程設計所用到的知識完全是上學期的知識,通過這次課程設計,我認識到了我對數據結構這門課的掌握程度。

首先我這個課程設計是關於二叉樹的,由於是剛接觸二叉樹,所以我掌握的長度並不深。在編程之前我把有關於二叉樹的知識有溫習了一遍,還好並沒有忘掉。二叉樹這章節難度中上等,而且內容廣泛,所以我只掌握了百分之六七十。

然後,在編程中我認識到了自己動手能力的不足,雖然相比較大二而言進步很大,但是我還是不滿意,有的在編程中必須看書才能寫出來,有的靠百度,很少是自己寫的。還好,我自己組裝程序的能力還行,要不這東拼西湊的程序根本組裝不了。在編程中我還認識到了,編程不能停下,如果編程的時間少了,知識忘的會很快,而且動手也會很慢。同時,同學之間的合作也很重要,每個人掌握的知識都不一樣,而且掌握程度也不一樣,你不會的別的同學會,所以在大家的共同努力下,編程會變得很容易。在這次編程中,我瞭解到了自己某些方面的不足,比如說鏈表的知識,雖然我能做一些有關於鏈表的編程,但是很慢,沒有別人編程的快,另外,二叉樹和圖的知識最不好掌握,這方面的知識廣泛而複雜。以前,沒動手編程的時候覺得這些知識很容易,現在編程了才發現自己錯了,大錯特錯了,我們這個專業最重視的就是動手編程能力,如果我們紙上寫作能力很強而動手編程能力很差,那我們就白上這個專業了。計算機這個專業就是鍛鍊動手編程能力的,一個人的理論知識再好,沒有動手編程能力,那他只是一個計算機專業的“入門者”。在編程中我們能找到滿足,如果我們自己編程了一個程序,我們會感到自豪,而且充實,因爲如果我們專研一個難得程序,我們會達到忘我的境界,自己完全沉浸在編程的那種樂趣之中,完全會廢寢忘食。編程雖然會乏味很無聊,但是隻要我們沉浸其中,你就會發現裏面的樂趣,遇到難得,你會勇往直前,不寫出來永不罷休;遇到容易的,你會找到樂趣。編程是很乏味,但是那是因爲你沒找到編程重的樂趣,你只看到了他的不好,而沒有看到他的好。其實,只要你找到編程中得樂趣,你就會完全喜歡上他,不編程還好,一編程你就會變成一個兩耳不聞窗外事的“植物人”。可以說只要你涉及到了計算機,你就的會編程,而且還要喜歡上他,永遠和他打交道,我相信在某一天,我們一定會把他當作我們不可或缺的好朋友。

最後我要談的是長時間編程的好處,俗話說“熟能生巧”,確實是這樣。如果我們長時間不編程,在一接觸他,我們會感到很陌生。有規律的編程會提高我們的動手能力,我們的思維,也會讓我們變得很細心。在一個幾千行的程序中,我們都能找到錯誤,那我們還會怕其他的錯誤嗎?可以說編程是我們在我們這一行業的一把利劍,如果我們能很好的利用它,我們就會成爲這個行業的真正成功者。也許你會說就算變成好了也不一定成功,是的,但是你不會編程就一定不會成功。如果,我們想成爲這個專業的成功者,我們就得愛上編程,不管他是怎麼得乏味,怎麼得無聊,我們都不能丟掉他。

總之,動手編程就是鍛鍊我們的動手能力,當然這個動手能力並不是科研上的動手能力,而是我們的動手編程能力,記住,只要你真正的喜歡上他,你就會發現其中的樂趣,我相信,只要你堅持下去,你一定會喜歡上他,把編程當作自己日常生活中一件必須做的事情。

數據結構棧的心得體會篇5

這學期開始兩週時間是我們自己選題上機的時間, 這學期開始兩週時間是我們自己選題上機的時間,雖然 上機時間只有短短兩個星期但從中確實學到了不少知識。 上機時間只有短短兩個星期但從中確實學到了不少知識。

數據結構可以說是計算機裏一門基礎課程, 據結構可以說是計算機裏一門基礎課程,但我覺得我們一低 計算機裏一門基礎課程 定要把基礎學紮實, 定要把基礎學紮實,然而這次短短的上機幫我又重新鞏固了 c 語言知識,讓我的水平又一部的提高。數據結構這是一門 語言知識 讓我的水平又一部的提高。數據結構這是一門 知識, 純屬於設計的科目,它需用把理論變爲上機調試。

純屬於設計的科目,它需用把理論變爲上機調試。它對我們 來說具有一定的難度。它是其它編程語言的一門基本學科。 來說具有一定的難度。它是其它編程語言的一門基本學科。 我選的上機題目是交叉合併兩個鏈表,對這個題目, 我選的上機題目是交叉合併兩個鏈表,對這個題目,我 覺得很基礎。剛開始調試代碼的時候有時就是一個很小的錯 覺得很基礎。剛開始調試代碼的時候有時就是一個很小的錯 調試代碼的時候 誤,導致整個程序不能運行,然而開始的我還沒從暑假的狀 導致整個程序不能運行, 態轉到學習上,每當程序錯誤時我都非常焦躁, 態轉到學習上,每當程序錯誤時我都非常焦躁,甚至想到了 放棄,但我最終找到了狀態,一步一步慢慢來, 放棄,但我最終找到了狀態,一步一步慢慢來,經過無數次 的檢查程序錯誤的原因後慢慢懂得了耐心是一個人成功的 必然具備的條件!

同時,通過此次課程設計使我瞭解到, 必然具備的條件! 同時,通過此次課程設計使我瞭解到, 硬件語言必不可缺少,要想成爲一個有能力的人,必須懂得 件語言必不可缺少,要想成爲一個有能力的人, 硬件基礎語言。在這次課程設計中, 硬件基礎語言。在這次課程設計中,雖然不會成功的編寫一 個完整的程序,但是在看程序的過程中, 個完整的程序,但是在看程序的過程中,不斷的上網查資料 以及翻閱相關書籍,通過不斷的模索,測試,發現問題, 以及翻閱相關書籍,通過不斷的模索,測試,發現問題,解

決問題和在老師的幫助下一步一步慢慢的正確運行程序, 決問題和在老師的幫助下一步一步慢慢的正確運行程序,終 於完成了這次課程設計, 於完成了這次課程設計,雖然這次課程設計結束了但是總覺 得自已懂得的知識很是不足,學無止境, 得自已懂得的知識很是不足,學無止境,以後還會更加的努 力深入的學習。 力深入的學習。

數據結構棧的心得體會篇6

完成了這次的二元多項式加減運算問題的課程設計後,我的心得體會很多,細細梳理一下,有以下幾點:

1、程序的編寫中的語法錯誤及修改

因爲我在解決二元多項式問題中,使用了鏈表的方式建立的二元多項式,所以程序的空間是動態的生成的,而且鏈表可以靈活地添加或刪除結點,所以使得程序得到簡化。但是出現的語法問題主要在於子函數和變量的定義,降序排序,關鍵字和函數名稱的書寫,以及一些庫函數的規範使用,這些問題均可以根據編譯器的警告提示,對應的將其解決。

2、程序的設計中的邏輯問題及其調整

我在設計程序的過程中遇到許多問題,首先在選擇數據結構的時候選擇了鏈表,但是鏈表的排序比較困難,特別是在多關鍵字的情況下,在一種關鍵字確定了順序以後,在第一關鍵字相同的時候,按某種順序對第二關鍵字進行排序。在此程序中共涉及到3個量數,即:係數,x的指數和y的指數,而關鍵字排是按x的指數和y的指數來看,由於要求是降冪排序且含有2個關鍵字,所以我先選擇x的指數作爲第一關鍵字,先按x的降序來排序,當x的指數相同時,再以y爲關鍵字,按照y的指數大小來進行降序排列。

另外,我在加法函數的編寫過程中也遇到了大量的問題,由於要同時比較多個關鍵字,而且設計中涉及了數組和鏈表的綜合運用,導致反覆修改了很長的時間才完成了一個加法的設計。但是,現在仍然有一個問題存在:若以0爲係數的項是首項則顯示含有此項,但是運算後則自動消除此項,這樣是正確的。但是當其不是首項的時候,加法函數在顯示的時候有0爲係數的項時,0前邊不顯示符號,當然,這樣也可以理解成當係數爲0時,忽略這一項。這也是本程序中一個不完美的地方。

我在設計減法函數的時候由於考慮不夠充分就直接編寫程序,走了很多彎路,不得不停下來仔細研究算法,後來發現由於前邊的加法函數完全適用於減法,只不過是將二元多項式b的所有項取負再用加法函數即可,可見算法的重要性不低於程序本身。

3、程序的調試中的經驗及體會

我在調試過程中,發生了許多小細節上的問題,它們提醒了自己在以後編程的時候要注意細節,即使是一個括號的遺漏或者一個字符的誤寫都會造成大量的錯誤,浪費許多時間去尋找並修改,總結的教訓就是寫程序的時候,一定要仔細、認真、專注。

我還有一個很深的體會就是格式和註釋,由於平時不注意格式和註釋這方面的要求,導致有的時候在檢查和調試的時候很不方便。有的時候甚至剛剛完成一部分的編輯,結果一不注意,就忘記了這一部分程序的功能。修改的時候也有不小心誤刪的情況出現。如果注意格式風格,並且養成隨手加註釋的習慣,就能減少這些不必要的反覆和波折。還有一點,就是在修改的時候,要注意修改前後的不同點在哪裏,改後調試結果要在原有的基礎上更加精確。

數據結構棧的心得體會篇7

通過本次課程設計,對圖的概念有了一個新的認識,在學習離散數學的'時候,總覺得圖是很抽象的東西,但是在學習了《數據結構與算法》這門課程之後,我慢慢地體會到了其中的奧妙,圖能夠在計算機中存在,首先要捕捉他有哪些具體化、數字化的信息,比如說權值、頂點個數等,這也就說明了想要把生活中的信息轉化到計算機中必須用數字來完整的構成一個信息庫,而圖的存在,又涉及到了頂點之間的聯繫。圖分爲有向圖和無向圖,而無向圖又是有向圖在權值雙向相等下的一種特例,如何能在計算機中表示一個雙向權值不同的圖,這就是一件很巧妙的事情,經過了思考和老師同學的幫助,我用edges[i][j]=up和edges[j][i]=up就能實現了一個雙向圖信息的存儲。

對整個程序而言,dijkstra算法始終都是核心內容,其實這個算法在實際思考中並不難,也許我們誰都知道找一個路徑最短的方法,及從頂點一步一步找最近的路線並與其直接距離相比較,但是,在計算機中實現這麼一個很簡單的想法就需要涉及到很多專業知識,爲了完成設計,在前期工作中,基本都是以學習c語言爲主,所以浪費了很多時間,比如說在程序中,刪除頂點和增加頂點的模塊中都有和建圖模塊相互重複的函數,但是由於技術的原因,只能做一些很累贅的函數,可見在調用知識點,我沒有掌握好。

不過,有了這次課程設計的經驗和教訓,我能夠很清楚的對自己定一個合適的水平,而且在這次課程設計中我學會了運用兩個新的函數sprintf和包涵在#include頭文件中的輸入函數。因爲課程設計的題目是求最短路徑,本來是想通過算法的實現把這個程序與交通情況相連,但是因爲來不及查找各地的信息,所以,這個計劃就沒有實現,我相信在以後有更長時間的情況下,我會做出來的。

1、鞏固和加深了對數據結構的理解,提高綜合運用本課程所學知識的能力。

2、培養了我選用參考書,查閱手冊及文獻資料的能力。培養獨立思考,深入研究,分析問題、解決問題的能力。

3、通過實際編譯系統的分析設計、編程調試,掌握應用軟件的分析方法和工程設計方法。

4、通過課程設計,培養了我嚴肅認真的工作作風,逐步建立正確的生產觀念、經濟觀念和全局觀念。

根據我在實習中遇到得問題,我將在以後的學習過程中注意以下幾點:

1、認真上好專業實驗課,多在實踐中鍛鍊自己。

2、寫程序的過程中要考慮周到,嚴密。

3、在做設計的時候要有信心,有耐心,切勿浮躁。

4、認真的學習課本知識,掌握課本中的知識點,並在此基礎上學會靈活運用。

5、在課餘時間裏多寫程序,熟練掌握在調試程序的過程中所遇到的常見錯誤,以便能節省調試程序的時間。

這是一門純屬於設計的科目,它需用把理論變爲上機調試。在學習科目的第一節課起,李老師就爲我們闡述了它的重要性。它對我們來說具有一定的難度。它是其它編程語言的一門基本學科。

剛開始學的時候確實有很多地方我很不理解,每次上課時老師都會給我們出不同的設計題目,對於我們一個初學者來說,無疑是一個具大的挑戰,撞了幾次壁之後,我決定靜下心來,仔細去寫程序。老師會給我們需要編程的內容一些講解,順着老師的思路,來完成自己的設計,我們可以開始運行自己的程序,可是好多處的錯誤讓人看的可怕,還看不出到底是哪裏出現了錯誤,但是程序還是得繼續下去,我多次請教了老師和同學,逐漸能自己找出錯誤,並加以改正。

tc裏檢查錯誤都是用英文來顯示出來的,經過了這次課程設計,現在已經可以瞭解很多錯誤在英文裏的提示,這對我來說是一個突破性的進步,眼看着一個個錯誤通過自己的努力在我眼前消失,覺得很是開心。此次的程序設計能夠成功,是我和我的同學三個人共同努力作用的結果。在這一段努力學習的過程中,我們的編程設計有了明顯的提高。

其實現在想起來,收穫還真是不少,雖然說以前非常不懂這門語言,在它上面花費了好多心血,覺得它很難,是需用花費了大量的時間編寫出來的。現在真正的明白了一些代碼的應用,每個程序都有一些共同點,通用的結構,相似的格式。只要努力去學習,就會靈活的去應用它。