數(shù)據(jù)結(jié)構(gòu)與算法課程心得體會(實用18篇)

字號:

    心得體會是在學(xué)習(xí)或工作中發(fā)現(xiàn)問題、經(jīng)驗和感悟的寶貴記錄。寫心得體會時,可以結(jié)合一些具體案例和生活經(jīng)歷,增加文章的可讀性。小編精選了一些真實感人的心得體會范文,希望可以引起大家對于生活和人生的思考。
    數(shù)據(jù)結(jié)構(gòu)與算法課程心得體會篇一
    專業(yè)知識,為了完成設(shè)計,在前期工作中,基本都是以學(xué)習(xí)c語言為主,所以浪費了很多時間,比如說在程序中,刪除頂點和增加頂點的模塊中都有和建圖模塊相互重復(fù)的函數(shù),但是由于技術(shù)的原因,只能做一些很累贅的函數(shù),可見在調(diào)用知識點,我沒有掌握好。
    不過,有了這次課程設(shè)計的經(jīng)驗和教訓(xùn),我能夠很清楚的對自己定一個合適的水平,而且在這次課程設(shè)計中我學(xué)會了運用兩個新的函數(shù)sprintf和包涵在#include頭文件中的輸入函數(shù)。因為課程設(shè)計的題目是求最短路徑,本來是想通過算法的實現(xiàn)把這個程序與交通情況相連,但是因為來不及查找各地的信息,所以,這個計劃就沒有實現(xiàn),我相信在以后有更長時間的情況下,我會做出來的。
    1、鞏固和加深了對數(shù)據(jù)結(jié)構(gòu)的理解,提高綜合運用本課程所學(xué)知識的能力。
    2、培養(yǎng)了我選用參考書,查閱手冊及文獻資料的能力。培養(yǎng)獨立思考,深入研究,分析問題、解決問題的能力。
    3、通過實際編譯系統(tǒng)的分析設(shè)計、編程調(diào)試,掌握應(yīng)用軟件的分析方法和工程設(shè)計方法。
    4、通過課程設(shè)計,培養(yǎng)了我嚴肅認真的工作作風(fēng),逐步建立正確的生產(chǎn)觀念、經(jīng)濟觀念和全局觀念。
    根據(jù)我在實習(xí)中遇到得問題,我將在以后的學(xué)習(xí)過程中注意以下幾點:
    1、認真上好專業(yè)實驗課,多在實踐中鍛煉自己。2、寫程序的過程中要考慮周到,嚴密。
    3、在做設(shè)計的時候要有信心,有耐心,切勿浮躁。4、認真的學(xué)習(xí)課本知識,掌握課本中的知識點,并在此基礎(chǔ)上學(xué)會靈活運用。
    5、在課余時間里多寫程序,熟練掌握在調(diào)試程序的過程中所遇到的常見錯誤,以便能節(jié)省調(diào)試程序的時間。
    這是一門純屬于設(shè)計的科目,它需用把理論變?yōu)樯蠙C調(diào)試。在學(xué)習(xí)科目的第一節(jié)課起,李老師就為我們闡述了它的重要性。它對我們來說具有一定的難度。它是其它編程語言的一門基本學(xué)科。
    己找出錯誤,并加以改正。
    tc里檢查錯誤都是用英文來顯示出來的,經(jīng)過了這次課程設(shè)計,現(xiàn)在已經(jīng)可以了解很多錯誤在英文里的提示,這對我來說是一個突破性的進步,眼看著一個個錯誤通過自己的努力在我眼前消失,覺得很是開心。此次的程序設(shè)計能夠成功,是我和我的同學(xué)三個人共同努力作用的結(jié)果。在這一段努力學(xué)習(xí)的過程中,我們的編程設(shè)計有了明顯的提高。
    其實現(xiàn)在想起來,收獲還真是不少,雖然說以前非常不懂這門語言,在它上面花費了好多心血,覺得它很難,是需用花費了大量的時間編寫出來的?,F(xiàn)在真正的明白了一些代碼的應(yīng)用,每個程序都有一些共同點,通用的結(jié)構(gòu),相似的格式。只要努力去學(xué)習(xí),就會靈活的去應(yīng)用它。
    數(shù)據(jù)結(jié)構(gòu)與算法課程心得體會篇二
    《數(shù)據(jù)結(jié)構(gòu)》是一門實踐性較強的課程,為了學(xué)好這門課程,必須在掌握理論知識的同時,加強上機實踐。
    吧!
    決問題和在老師的幫助下一步一步慢慢的正確運行程序,決問題和在老師的幫助下一步一步慢慢的正確運行程序,終于完成了這次課程設(shè)計,于完成了這次課程設(shè)計,雖然這次課程設(shè)計結(jié)束了但是總覺得自已懂得的知識很是不足,學(xué)無止境,得自已懂得的知識很是不足,學(xué)無止境,以后還會更加的努力深入的學(xué)習(xí)。力深入的學(xué)習(xí)。
    本次課程設(shè)計,使我對《數(shù)據(jù)結(jié)構(gòu)》這門課程有了更深入的理解。我的課程設(shè)計題目是線索二叉樹的運算。剛開始做這個程序的時候,感到完全無從下手,甚至讓我覺得完成這次程序設(shè)計根本就是不可能的,于是開始查閱各種資料以及參考文獻,之后便開始著手寫程序,寫完運行時有很多問題。特別是實現(xiàn)線索二叉樹的刪除運算時很多情況沒有考慮周全,經(jīng)常運行出現(xiàn)錯誤,但通過同學(xué)間的幫助最終基本解決問題。
    在本課程設(shè)計中,我明白了理論與實際應(yīng)用相結(jié)合的重要性,并提高了自己組織數(shù)據(jù)及編寫大型程序的能力。培養(yǎng)了基本的、良好的程序設(shè)計技能以及合作能力。這次課程設(shè)計同樣提高了我的綜合運用所學(xué)知識的能力。并對vc有了更深入的了解?!稊?shù)據(jù)結(jié)構(gòu)》是一門實踐性很強的課程,上機實習(xí)是對學(xué)生全面綜合素質(zhì)進行訓(xùn)練的一種最基本的方法,是與課堂聽講、自學(xué)和練習(xí)相輔相成的、必不可少的一個教學(xué)環(huán)節(jié)。上機實習(xí)一方面能使書本上的知識變“活”,起到深化理解和靈活掌握教學(xué)內(nèi)容的目的;另一方面,上機實習(xí)是對學(xué)生軟件設(shè)計的綜合能力的訓(xùn)練,包括問題分析,總體結(jié)構(gòu)設(shè)計,程序設(shè)計基本技能和技巧的訓(xùn)練。此外,還有更重要的一點是:機器是比任何教師更嚴厲的檢查者。因此,在“數(shù)據(jù)結(jié)構(gòu)”的學(xué)習(xí)過程中,必須嚴格按照老師的要求,主動地、積極地、認真地做好每一個實驗,以不斷提高自己的編程能力與專業(yè)素質(zhì)。
    通過這段時間的課程設(shè)計,我認識到數(shù)據(jù)結(jié)構(gòu)是一門比較難的課程。需要多花時間上機練習(xí)。這次的程序訓(xùn)練培養(yǎng)了我實際分析問題、編程和動手能力,使我掌握了程序設(shè)計的基本技能,提高了我適應(yīng)實際,實踐編程的能力。
    總的來說,這次課程設(shè)計讓我獲益匪淺,對數(shù)據(jù)結(jié)構(gòu)也有了進一步的理解和認識。
    通過本次課程設(shè)計,對圖的概念有了一個新的認識,在學(xué)習(xí)離散數(shù)學(xué)的時候,總覺得圖是很抽象的東西,但是在學(xué)習(xí)了《數(shù)據(jù)結(jié)構(gòu)與算法》這門課程之后,我慢慢地體會到了其中的奧妙,圖能夠在計算機中存在,首先要捕捉他有哪些具體化、數(shù)字化的信息,比如說權(quán)值、頂點個數(shù)等,這也就說明了想要把生活中的信息轉(zhuǎn)化到計算機中必須用數(shù)字來完整的構(gòu)成一個信息庫,而圖的存在,又涉及到了頂點之間的聯(lián)系。圖分為有向圖和無向圖,而無向圖又是有向圖在權(quán)值雙向相等下的一種特例,如何能在計算機中表示一個雙向權(quán)值不同的圖,這就是一件很巧妙的事情,經(jīng)過了思考和老師同學(xué)的幫助,我用edges[i][j]=up和edges[j][i]=up就能實現(xiàn)了一個雙向圖信息的存儲。對整個程序而言,dijkstra算法始終都是核心內(nèi)容,其實這個算法在實際思考中并不難,也許我們誰都知道找一個路徑最短的方法,及從頂點一步一步找最近的路線并與其直接距離相比較,但是,在計算機中實現(xiàn)這么一個很簡單的想法就需要涉及到很多專業(yè)知識,為了完成設(shè)計,在前期工作中,基本都是以學(xué)習(xí)c語言為主,所以浪費了很多時間,比如說在程序中,刪除頂點和增加頂點的模塊中都有和建圖模塊相互重復(fù)的函數(shù),但是由于技術(shù)的原因,只能做一些很累贅的函數(shù),可見在調(diào)用知識點,我沒有掌握好。不過,有了這次課程設(shè)計的經(jīng)驗和教訓(xùn),我能夠很清楚的對自己定一個合適的水平,而且在這次課程設(shè)計中我學(xué)會了運用兩個新的函數(shù)sprintf和包涵在#include頭文件中的輸入函數(shù)。因為課程設(shè)計的題目是求最短路徑,本來是想通過算法的實現(xiàn)把這個程序與交通情況相連,但是因為來不及查找各地的信息,所以,這個計劃就沒有實現(xiàn),我相信在以后有更長時間的情況下,我會做出來的。
    數(shù)據(jù)結(jié)構(gòu)與算法課程心得體會篇三
     本次課程設(shè)計,使我對《數(shù)據(jù)結(jié)構(gòu)》這門課程有了更深入的理解?!稊?shù)據(jù)結(jié)構(gòu)》是一門實踐性較強的課程,為了學(xué)好這門課程,必須在掌握理論知識的同時,加強上機實踐。
     我的課程設(shè)計題目是線索二叉樹的運算。剛開始做這個程序的時候,感到完全無從下手,甚至讓我覺得完成這次程序設(shè)計根本就是不可能的,于是開始查閱各種資料以及參考文獻,之后便開始著手寫程序,寫完運行時有很多問題。特別是實現(xiàn)線索二叉樹的刪除運算時很多情況沒有考慮周全,經(jīng)常運行出現(xiàn)錯誤,但通過同學(xué)間的幫助最終基本解決問題。
     在本課程設(shè)計中,我明白了理論與實際應(yīng)用相結(jié)合的重要性,并提高了自己組織數(shù)據(jù)及編寫大型程序的能力。培養(yǎng)了基本的、良好的程序設(shè)計技能以及合作能力。這次課程設(shè)計同樣提高了我的綜合運用所學(xué)知識的能力。并對vc有了更深入的了解。《數(shù)據(jù)結(jié)構(gòu)》是一門實踐性很強的課程,上機實習(xí)是對學(xué)生全面綜合素質(zhì)進行訓(xùn)練的一種最基本的方法,是與課堂聽講、自學(xué)和練習(xí)相輔相成的、必不可少的一個教學(xué)環(huán)節(jié)。上機實習(xí)一方面能使書本上的知識變“活”,起到深化理解和靈活掌握教學(xué)內(nèi)容的目的;另一方面,上機實習(xí)是對學(xué)生軟件設(shè)計的綜合能力的訓(xùn)練,包括問題分析,總體結(jié)構(gòu)設(shè)計,程序設(shè)計基本技能和技巧的訓(xùn)練。此外,還有更重要的一點是:機器是比任何教師更嚴厲的檢查者。因此,在“數(shù)據(jù)結(jié)構(gòu)”的學(xué)習(xí)過程中,必須嚴格按照老師的要求,主動地、積極地、認真地做好每一個實驗,以不斷提高自己的編程能力與專業(yè)素質(zhì)。
     通過這段時間的課程設(shè)計,我認識到數(shù)據(jù)結(jié)構(gòu)是一門比較難的課程。需要多花時間上機練習(xí)。這次的程序訓(xùn)練培養(yǎng)了我實際分析問題、編程和動手能力,使我掌握了程序設(shè)計的基本技能,提高了我適應(yīng)實際,實踐編程的能力。
     總的來說,這次課程設(shè)計讓我獲益匪淺,對數(shù)據(jù)結(jié)構(gòu)也有了進一步的理解和認識。
     這學(xué)期開始兩周時間是我們自己選題上機的時間,這學(xué)期開始兩周時間是我們自己選題上機的時間,雖然上機時間只有短短兩個星期但從中確實學(xué)到了不少知識。上機時間只有短短兩個星期但從中確實學(xué)到了不少知識。數(shù)據(jù)結(jié)構(gòu)可以說是計算機里一門基礎(chǔ)課程,據(jù)結(jié)構(gòu)可以說是計算機里一門基礎(chǔ)課程,但我覺得我們一低計算機里一門基礎(chǔ)課程定要把基礎(chǔ)學(xué)扎實,定要把基礎(chǔ)學(xué)扎實,然而這次短短的上機幫我又重新鞏固了c語言知識,讓我的水平又一部的提高。數(shù)據(jù)結(jié)構(gòu)這是一門語言知識讓我的水平又一部的.提高。
    數(shù)據(jù)結(jié)構(gòu)與算法課程心得體會篇四
    “數(shù)據(jù)結(jié)構(gòu)與算法課程設(shè)計”是計算機科學(xué)與技術(shù)專業(yè)學(xué)生的集中實踐性環(huán)節(jié)之一,是學(xué)習(xí)“數(shù)據(jù)結(jié)構(gòu)與算法”理論和實驗課程后進行的一次全面的綜合練習(xí)。其目的是要達到理論與實際應(yīng)用相結(jié)合,提高學(xué)生組織數(shù)據(jù)及編寫程序的能力,使學(xué)生能夠根據(jù)問題要求和數(shù)據(jù)對象的特性,學(xué)會數(shù)據(jù)組織的方法,把現(xiàn)實世界中的實際問題在計算機內(nèi)部表示出來并用軟件解決問題,培養(yǎng)良好的程序設(shè)計技能。
    當(dāng)初拿到這次課程設(shè)計題目時,似乎無從下手,但是經(jīng)過分析可知,對于簡單文本編輯器來說功能有限,不外乎創(chuàng)作文本、顯示文本、統(tǒng)計文本中字母—數(shù)字—空格—特殊字符—文本總字數(shù)、查找、刪除及插入這幾項功能。于是,我進行分模塊進行編寫程序。雖然每個模塊程序并不大,但是每個模塊都要經(jīng)過一番思考才能搞清其算法思想,只要有了算法思想,再加上c程序語言基礎(chǔ),基本完成功能,但是,每個模塊不可能一次完成而沒有一點錯誤,所以,我給自己定了一個初級目標(biāo):用c語言大體描述每個算法,然后經(jīng)調(diào)試后改掉其中明顯的錯誤,并且根據(jù)調(diào)試結(jié)果改正一些算法錯誤,當(dāng)然,這一目標(biāo)實現(xiàn)較難。最后,經(jīng)過反復(fù)思考,看一下程序是否很完善,如果能夠達到更完善當(dāng)然最好。并非我們最初想到的算法就是最好的算法,所以,有事我們會而不得不在編寫途中終止換用其他算法,但是,我認為這不是浪費時間,而是一種認識過程,在編寫程序中遇到的問題會為我們以后編寫程序積累經(jīng)驗,避免再犯同樣的錯誤。但是,有的方法不適用于這個程序,或許會適用于另外一個程序。所以,探索的過程是成長的過程,是為成功做的鋪墊。經(jīng)過努力后獲得成功,會更有成就感。
    在課程設(shè)計過程中通過獨立解決問題,首先分析設(shè)計題目中涉及到的數(shù)據(jù)類型,在我們學(xué)習(xí)的數(shù)據(jù)存儲結(jié)構(gòu)中不外乎線性存儲結(jié)構(gòu)及非線性存儲結(jié)構(gòu),非線性存儲結(jié)構(gòu)中有樹型,集合型,圖型等存儲結(jié)構(gòu),根據(jù)數(shù)據(jù)類型設(shè)計數(shù)據(jù)結(jié)點類型。然后根據(jù)設(shè)計題目的主要任務(wù),設(shè)計出程序大體輪廓(包括子函數(shù)和主函數(shù)),然后對每個子函數(shù)進行大體設(shè)計,過程中錯誤在所難免,所以要經(jīng)過仔細探索,對每個函數(shù)進行改進。
    程序基本完成后,功能雖然齊全,但是程序是否完善(例如,輸入數(shù)據(jù)時是否在其范圍之內(nèi),所以加入判斷語句是很有必要的)還需運行測試多次,如有發(fā)現(xiàn)應(yīng)該對其進行改善,當(dāng)然要在力所能及的前提下。
    課程設(shè)計過程雖然短暫,但是使我深刻理解數(shù)據(jù)結(jié)構(gòu)和算法課程對編程的重要作用,還有“數(shù)據(jù)結(jié)構(gòu)與算法”還提供了一些常用的基本算法思想及算法的編寫程序。通過獨立完成設(shè)計題目,使我系統(tǒng)了解編程的基本步驟,提高分析和解決實際問題的能力。通過實踐積累經(jīng)驗,才能有所創(chuàng)新。正所謂,良好的基礎(chǔ)決定上層建筑。只有基本功做好了,才有可能做出更好的成果。
    數(shù)據(jù)結(jié)構(gòu)與算法課程心得體會篇五
    本次課程設(shè)計所用到的知識完全是上學(xué)期的知識,通過這次課程設(shè)計,我認識到了我對數(shù)據(jù)結(jié)構(gòu)這門課的掌握程度。
    首先我這個課程設(shè)計是關(guān)于二叉樹的,由于是剛接觸二叉樹,所以我掌握的長度并不深。在編程之前我把有關(guān)于二叉樹的知識有溫習(xí)了一遍,還好并沒有忘掉。二叉樹這章節(jié)難度中上等,而且內(nèi)容廣泛,所以我只掌握了百分之六七十。
    然后,在編程中我認識到了自己動手能力的不足,雖然相比較大二而言進步很大,但是我還是不滿意,有的在編程中必須看書才能寫出來,有的靠百度,很少是自己寫的。還好,我自己組裝程序的能力還行,要不這東拼西湊的程序根本組裝不了。在編程中我還認識到了,編程不能停下,如果編程的時間少了,知識忘的會很快,而且動手也會很慢。同時,同學(xué)之間的合作也很重要,每個人掌握的知識都不一樣,而且掌握程度也不一樣,你不會的別的同學(xué)會,所以在大家的共同努力下,編程會變得很容易。在這次編程中,我了解到了自己某些方面的不足,比如說鏈表的知識,雖然我能做一些有關(guān)于鏈表的編程,但是很慢,沒有別人編程的快,另外,二叉樹和圖的知識最不好掌握,這方面的知識廣泛而復(fù)雜。以前,沒動手編程的時候覺得這些知識很容易,現(xiàn)在編程了才發(fā)現(xiàn)自己錯了,大錯特錯了,我們這個專業(yè)最重視的就是動手編程能力,如果我們紙上寫作能力很強而動手編程能力很差,那我們就白上這個專業(yè)了。計算機這個專業(yè)就是鍛煉動手編程能力的,一個人的理論知識再好,沒有動手編程能力,那他只是一個計算機專業(yè)的“入門者”。在編程中我們能找到滿足,如果我們自己編程了一個程序,我們會感到自豪,而且充實,因為如果我們專研一個難得程序,我們會達到忘我的境界,自己完全沉浸在編程的那種樂趣之中,完全會廢寢忘食。編程雖然會乏味很無聊,但是只要我們沉浸其中,你就會發(fā)現(xiàn)里面的樂趣,遇到難得,你會勇往直前,不寫出來永不罷休;遇到容易的,你會找到樂趣。編程是很乏味,但是那是因為你沒找到編程重的樂趣,你只看到了他的不好,而沒有看到他的好。其實,只要你找到編程中得樂趣,你就會完全喜歡上他,不編程還好,一編程你就會變成一個兩耳不聞窗外事的“植物人”。可以說只要你涉及到了計算機,你就的會編程,而且還要喜歡上他,永遠和他打交道,我相信在某一天,我們一定會把他當(dāng)作我們不可或缺的好朋友。
    最后我要談的是長時間編程的好處,俗話說“熟能生巧”,確實是這樣。如果我們長時間不編程,在一接觸他,我們會感到很陌生。有規(guī)律的編程會提高我們的動手能力,我們的思維,也會讓我們變得很細心。在一個幾千行的程序中,我們都能找到錯誤,那我們還會怕其他的錯誤嗎?可以說編程是我們在我們這一行業(yè)的一把利劍,如果我們能很好的利用它,我們就會成為這個行業(yè)的真正成功者。也許你會說就算變成好了也不一定成功,是的,但是你不會編程就一定不會成功。如果,我們想成為這個專業(yè)的成功者,我們就得愛上編程,不管他是怎么得乏味,怎么得無聊,我們都不能丟掉他。
    總之,動手編程就是鍛煉我們的動手能力,當(dāng)然這個動手能力并不是科研上的動手能力,而是我們的動手編程能力,記住,只要你真正的喜歡上他,你就會發(fā)現(xiàn)其中的樂趣,我相信,只要你堅持下去,你一定會喜歡上他,把編程當(dāng)作自己日常生活中一件必須做的事情。
    數(shù)據(jù)結(jié)構(gòu)與算法課程心得體會篇六
    做了一個星期的程序設(shè)計終于做完了,在這次程序設(shè)計課中,真是讓我獲益匪淺,我突然發(fā)現(xiàn)寫程序還挺有意思的。由于上學(xué)期的c語言跟這學(xué)期的數(shù)據(jù)結(jié)構(gòu)都算不上真正的懂,對于書上的稍微難點的知識就是是而非的,所以我只是對老師的程序理解,我也試著去改變了一些變量,自己也盡量多的去理解老師做程序的思路。當(dāng)我第一天坐在那里的時候,我就不知道該做些什么,后來我只有下來自己看了一遍書來熟悉下以前學(xué)過的知識。
    通過這次的程序設(shè)計,發(fā)現(xiàn)一個程序設(shè)計就是算法與數(shù)據(jù)結(jié)構(gòu)的結(jié)合體,自己也開始對程序產(chǎn)生了前所未有的興趣,以前偷工減料的學(xué)習(xí)也不可能一下子寫出一個程序出來,于是我就認真看老師寫的程序,發(fā)現(xiàn)我們看懂了一個程序其實不難,難的是對于一個程序的思想的理解,我們要掌握一個算法,不僅僅限于讀懂,主要的是要理解老師的思路,學(xué)習(xí)老師的解決問題的'方法。這次試驗中,我發(fā)現(xiàn)書本上的知識是一個基礎(chǔ),但是我基礎(chǔ)都沒掌握,更別說寫出一個整整的程序了。自己在寫程序的時候,也發(fā)現(xiàn)自己的知識太少了,特別是基礎(chǔ)知識很多都是模模糊糊的一個概念,沒有落實到真正的程序,所以自己寫的時候也感到萬分痛苦,基本上涉及一個知識我就會去看看書,對于書本上的知識沒掌握好。在飯后閑暇時間我也總結(jié)了一下,自己以前上課也認真的聽了,但是還是寫不出來,這主要歸結(jié)于自己的練習(xí)太少了,而且也總是半懂就不管了。在改寫老師的程序中也出現(xiàn)了很多的問題,不斷的修改就是不斷的學(xué)習(xí)過程,當(dāng)我們?nèi)硇牡耐度肫渲袝r,實際上是一件很有樂趣的事情。對于以后的學(xué)習(xí)有了幾點總結(jié):
    第二、各種常用的排序算法,如冒泡排序、堆排序……,這些。
    是必考的內(nèi)容,分數(shù)不會少于20%;
    數(shù)據(jù)結(jié)構(gòu)與算法課程心得體會篇七
    數(shù)據(jù)結(jié)構(gòu)是計算機程序設(shè)計的重要理論技術(shù)基礎(chǔ),它不僅是計算機科學(xué)的核心課程,而且也已經(jīng)成為其他理工專業(yè)的熱門選修課。隨著高級語言的發(fā)展,數(shù)據(jù)結(jié)構(gòu)在計算機的研究和應(yīng)用中已展現(xiàn)出強大的生命力,它兼顧了諸多高級語言的特點,是一種典型的結(jié)構(gòu)化程序設(shè)計語言,它處理能力強,使用靈活方便,應(yīng)用面廣,具有良好的可移植性。
    緊張的兩周數(shù)據(jù)結(jié)構(gòu)實訓(xùn)很快就過去了,通過這兩周的實踐學(xué)習(xí),不僅使我們鞏固了以前的知識并在此基礎(chǔ)上還對數(shù)據(jù)結(jié)構(gòu)的特點和算法有了更深的了解,使我們在這門課程的實際應(yīng)用上也有了一個提高。
    首先這兩周的學(xué)習(xí),使我們在鞏固了原有的理論知識上,又培養(yǎng)了靈活運用和組成所學(xué)過知識及技能來分析、解決實際問題的能力,使我們體會到自身知識和能力在實際中的應(yīng)用和發(fā)揮。
    其次,它激發(fā)了我們創(chuàng)新意識,開發(fā)創(chuàng)造的能力和培養(yǎng)溝通能力。另外,讓我們進一步熟悉了數(shù)據(jù)結(jié)構(gòu)的設(shè)計應(yīng)用。每一處編碼都是在反復(fù)的熟悉數(shù)據(jù)結(jié)構(gòu)的結(jié)構(gòu)特性,及其語法、函數(shù)和程序設(shè)計思想的過程,對我們數(shù)據(jù)結(jié)構(gòu)的學(xué)習(xí)和提高很有益處,并且使我們明白了程序設(shè)計過程,如解決一些實際問題,從解決實際問題的角度,我們可以這樣來看:
    第一要了解這個問題的基本要求,即輸入、輸出、完成從輸入到輸出的要求是什么;。
    第二,從問題的要害入手,從前到后的解決問題的每個方面,即從輸入開始入手,著重考慮如何從輸入導(dǎo)出輸出,在這個過程中,可確定所需的數(shù)據(jù)結(jié)構(gòu)的基本類型——線性表、棧、隊列、串、數(shù)組、廣義表、樹和二叉樹以及圖等,然后確定處理過程——算法,通過在編譯環(huán)境中的編譯與調(diào)試,可到最終的程序。最后,在這次的實訓(xùn)過程中,我們深刻的認識到了自己在學(xué)習(xí)方面的不足之處,我知道我還有太多的基本的思想沒有真正的理解,當(dāng)然我們不會灰心,我們會在以后的日子里努力彌補我們的不足。
    在兩周的實訓(xùn)中,我們也體會到了團隊合作的重要性,從最初的查閱資料到最后的程序的成功運行,我們組有過山窮水盡的困惑;有過柳暗花明的驚喜;有過唇槍舌劍的辯論;有過相互鼓勵的安慰。兩個禮拜的時間我們經(jīng)歷了很多,也收獲了很多。與其說這次的實訓(xùn)是體力與腦力的作業(yè),不如說它是合作精神和毅力的考驗。經(jīng)過這次課程設(shè)計,我們不僅學(xué)到了很多知識和技能,更重要的是我們學(xué)會了如何運用所學(xué)知識去解決實際問題。
    總之,兩個禮拜的課程設(shè)計讓我們受益匪淺。我們深深認識到,要學(xué)好一門學(xué)科,沒有刻苦鉆研的精神是不行的,只有在不斷的嘗試中,經(jīng)歷失敗,從失敗中經(jīng)驗,然后再不斷的嘗試,才能獲得成功。
    數(shù)據(jù)結(jié)構(gòu)與算法課程心得體會篇八
    本次課程設(shè)計,使我對《數(shù)據(jù)結(jié)構(gòu)》這門課程有了更深入的理解?!稊?shù)據(jù)結(jié)構(gòu)》是一門實踐性較強的課程,為了學(xué)好這門課程,必須在掌握理論知識的同時,加強上機實踐。
    我的課程設(shè)計題目是線索二叉樹的運算。剛開始做這個程序的時候,感到完全無從下手,甚至讓我覺得完成這次程序設(shè)計根本就是不可能的,于是開始查閱各種資料以及參考文獻,之后便開始著手寫程序,寫完運行時有很多問題。特別是實現(xiàn)線索二叉樹的刪除運算時很多情況沒有考慮周全,經(jīng)常運行出現(xiàn)錯誤,但通過同學(xué)間的幫助最終基本解決問題。
    在本課程設(shè)計中,我明白了理論與實際應(yīng)用相結(jié)合的重要性,并提高了自己組織數(shù)據(jù)及編寫大型程序的能力。培養(yǎng)了基本的、良好的程序設(shè)計技能以及合作能力。這次課程設(shè)計同樣提高了我的綜合運用所學(xué)知識的能力。并對vc有了更深入的了解?!稊?shù)據(jù)結(jié)構(gòu)》是一門實踐性很強的課程,上機實習(xí)是對學(xué)生全面綜合素質(zhì)進行訓(xùn)練的一種最基本的方法,是與課堂聽講、自學(xué)和練習(xí)相輔相成的、必不可少的一個教學(xué)環(huán)節(jié)。上機實習(xí)一方面能使書本上的知識變“活”,起到深化理解和靈活掌握教學(xué)內(nèi)容的目的`;另一方面,上機實習(xí)是對學(xué)生軟件設(shè)計的綜合能力的訓(xùn)練,包括問題分析,總體結(jié)構(gòu)設(shè)計,程序設(shè)計基本技能和技巧的訓(xùn)練。此外,還有更重要的一點是:機器是比任何教師更嚴厲的檢查者。因此,在“數(shù)據(jù)結(jié)構(gòu)”的學(xué)習(xí)過程中,必須嚴格按照老師的要求,主動地、積極地、認真地做好每一個實驗,以不斷提高自己的編程能力與專業(yè)素質(zhì)。
    通過這段時間的課程設(shè)計,我認識到數(shù)據(jù)結(jié)構(gòu)是一門比較難的課程。需要多花時間上機練習(xí)。這次的程序訓(xùn)練培養(yǎng)了我實際分析問題、編程和動手能力,使我掌握了程序設(shè)計的基本技能,提高了我適應(yīng)實際,實踐編程的能力。
    數(shù)據(jù)結(jié)構(gòu)與算法課程心得體會篇九
    計算機技術(shù)已成為現(xiàn)代化發(fā)展的重要支柱和標(biāo)志,并逐步滲透到人類生活的各個領(lǐng)域。隨著計算機硬件的發(fā)展,對計算機軟件的發(fā)展也提出了越來越高的要求。由于軟件的核心是算法,而算法實際上是對加工數(shù)據(jù)過程的描述,所以研究數(shù)據(jù)結(jié)構(gòu)對提高編程能力和設(shè)計高性能的算法是至關(guān)重要的。
    非數(shù)值計算問題的數(shù)學(xué)模型不再是傳統(tǒng)的數(shù)學(xué)方程問題,而是諸如表、樹、圖之類的數(shù)據(jù)結(jié)構(gòu)。因此,簡單地說,數(shù)據(jù)結(jié)構(gòu)是一門研究非數(shù)值計算的程序設(shè)計問題的學(xué)科,主要研究數(shù)據(jù)的邏輯結(jié)構(gòu)、存儲結(jié)構(gòu)和算法。
    一、教學(xué)目的與要求---了解數(shù)據(jù)的邏輯結(jié)構(gòu)和物理結(jié)構(gòu);
    教學(xué)要求在每章教學(xué)內(nèi)容給出,大體上為三個層次:了解、掌握和熟練掌握。他們的含義大致為:了解是正確理解概念,掌握是學(xué)會所學(xué)知識,熟練掌握就是運用所學(xué)知識解決實際問題。
    教學(xué)目的為:了解算法對于程序設(shè)計的重要性;學(xué)習(xí)掌握基本數(shù)據(jù)結(jié)構(gòu)的描述與實現(xiàn)方法,熟練掌握典型數(shù)據(jù)結(jié)構(gòu)及其應(yīng)用算法的設(shè)計。了解算法分析方法。
    二、教學(xué)重點與難點--數(shù)據(jù)結(jié)構(gòu)中基本概念和術(shù)語,算法描述和分析方法。
    1、鏈表插入、刪除運算的算法。算法時間復(fù)雜度。
    2、后綴表達式的算法,數(shù)制的換算。
    利用本章的基本知識設(shè)計相關(guān)的應(yīng)用問題。
    3、循環(huán)隊列的特點及判斷溢出的條件。
    利用隊列的特點設(shè)計相關(guān)的應(yīng)用問題。
    4、串的模式匹配運算算法。
    5、二叉樹遍歷算法的設(shè)計。
    利用二叉樹遍歷算法,解決簡單應(yīng)用問題哈夫曼樹的算法。
    6、圖的遍歷。
    最小生成樹。
    最短路徑。
    7、二叉排序樹查找。
    平衡樹二叉樹。
    8、堆排序。
    快速排序歸并排序。
    四、教學(xué)內(nèi)容、目標(biāo)與學(xué)時分配。
    教學(xué)內(nèi)容教學(xué)目標(biāo)課時分配。
    1、緒論。
    邏輯結(jié)構(gòu)與存儲結(jié)構(gòu)。
    算法和算法分析。
    2、線性表。
    線性表的定義與運算。
    線性表的順序存儲。
    線性表的鏈?zhǔn)酱鎯Α?BR>    3、棧。
    棧的定義與運算。
    棧存儲和實現(xiàn)。
    棧的應(yīng)用舉例。
    4、隊列。
    隊列的定義與基本運算。
    隊列的存儲與實現(xiàn)。
    隊列的應(yīng)用舉例。
    5、串。
    串的定義與基本運算。
    串的表示與實現(xiàn)。
    串的基本運算。
    6、樹和二叉樹。
    樹的定義和術(shù)語。
    二叉樹樹的基本概念和術(shù)語遍歷二叉數(shù)和線索二叉樹。
    二叉樹的轉(zhuǎn)換。
    二叉樹的應(yīng)用。
    哈夫曼樹及其應(yīng)用。
    7、圖。
    圖的定義和術(shù)語。
    圖的存儲結(jié)構(gòu)。
    圖的遍歷算法。
    圖的連通性。
    8、查找。
    查找的基本概念與靜態(tài)查找動態(tài)查找。
    哈希表。
    了解。
    了解。
    掌握。
    熟練掌握順序表存儲地址的計算。
    掌握單鏈表的結(jié)構(gòu)特點和基本運算。
    掌握雙鏈表的結(jié)構(gòu)特點和基本運算。
    掌握棧的定義與運算。
    掌握棧的存儲與實現(xiàn)。
    熟練掌握棧的各種實際應(yīng)用。
    掌握隊列的定義與基本運算。
    熟練掌握隊列的存儲與實現(xiàn)。
    掌握循環(huán)隊列的特征和基本運算。
    了解串的邏輯結(jié)構(gòu)。
    掌握串的存儲結(jié)構(gòu)。
    熟練掌握串的基本運算。
    了解。
    了解二叉樹。
    熟練掌握二叉樹定義和存儲結(jié)構(gòu)。
    了解二叉樹的遍歷算法。
    掌握。
    掌握哈夫曼的建立及編碼。
    了解。
    了解。
    熟練掌握。
    熟練掌握。
    了解。
    熟練掌握。
    了解哈希表與哈希方法。
    4學(xué)時。
    1學(xué)時。
    1學(xué)時。
    2學(xué)時。
    8學(xué)時。
    2學(xué)時。
    2學(xué)時。
    4學(xué)時。
    8學(xué)時。
    2學(xué)時。
    2學(xué)時。
    4學(xué)時。
    6學(xué)時。
    2學(xué)時。
    2學(xué)時。
    2學(xué)時。
    6學(xué)時。
    2學(xué)時。
    2學(xué)時。
    2學(xué)時。
    12學(xué)時。
    2學(xué)時。
    2學(xué)時。
    2學(xué)時。
    2學(xué)時。
    2學(xué)時。
    2學(xué)時。
    8學(xué)時。
    2學(xué)時。
    2學(xué)時。
    2學(xué)時。
    2學(xué)時。
    8學(xué)時。
    4學(xué)時。
    2學(xué)時。
    2學(xué)時。
    9、排序。
    12學(xué)時插入排序。
    熟練掌握基本思想。
    3學(xué)時快速排序。
    了解各種內(nèi)部排序方法和特點。
    3學(xué)時選擇排序。
    掌握。
    2學(xué)時各種排序方法比較。
    掌握。
    2學(xué)時。
    實驗內(nèi)容實驗?zāi)繕?biāo)課時分配算法編程實驗:
    1、用指針方式編寫程序復(fù)習(xí)c(c++)語言指針、結(jié)構(gòu)體等的用法。
    2、對單鏈表進行遍歷。
    鏈表的描述與操作實現(xiàn)。
    3、棧及其操作。
    描述方法及操作。
    4、編寫串子系統(tǒng)1串的特點及順序定長存儲、操作、查找。
    5、編寫串子系統(tǒng)2串的特點及順序定長存儲、操作、查找。
    6、編寫樹子系統(tǒng)1二叉樹的特點及存儲方式、創(chuàng)建、顯示、遍歷等。
    7、編寫樹子系統(tǒng)2二叉樹的特點及存儲方式、創(chuàng)建、顯示、遍歷等。
    8、圖子系統(tǒng)。
    圖的鄰接矩陣的存儲、遍歷、廣度/深度優(yōu)先搜索。
    9、查找子系統(tǒng)。
    理解查找基本算法、平均查找長度、靜態(tài)、動態(tài)查找等。
    五、考試范圍與題型。
    1、考試范圍與分數(shù)比例。
    1)緒論。
    12%2)線性表。
    17%3)棧。
    7%4)隊列。
    6%5)串。
    4%6)樹和二叉樹。
    14%7)圖。
    15%8)查找。
    4%9)排序。
    21%。
    2、考試題型與分數(shù)比例。
    1)名詞解釋。
    18%2)判斷對錯。
    16%3)填空。
    16%4)單項選擇。
    18%5)應(yīng)用。
    32%。
    六、教材與參考資料。
    1、教材:實用數(shù)據(jù)結(jié)構(gòu)基礎(chǔ)(譚浩強)中國鐵道出版社。
    (撰寫人:
    審核人:2學(xué)時2學(xué)時2學(xué)時2學(xué)時2學(xué)時2學(xué)時2學(xué)時2學(xué)時2學(xué)時)。
    數(shù)據(jù)結(jié)構(gòu)與算法課程心得體會篇十
    本次課程設(shè)計,使我對《數(shù)據(jù)結(jié)構(gòu)》這門課程有了更深入的理解?!稊?shù)據(jù)結(jié)構(gòu)》是一門實踐性較強的課程,為了學(xué)好這門課程,必須在掌握理論知識的同時,加強上機實踐。
    我的課程設(shè)計題目是線索二叉樹的運算。剛開始做這個程序的時候,感到完全無從下手,甚至讓我覺得完成這次程序設(shè)計根本就是不可能的,于是開始查閱各種資料以及參考文獻,之后便開始著手寫程序,寫完運行時有很多問題。特別是實現(xiàn)線索二叉樹的刪除運算時很多情況沒有考慮周全,經(jīng)常運行出現(xiàn)錯誤,但通過同學(xué)間的幫助最終基本解決問題。
    在本課程設(shè)計中,我明白了理論與實際應(yīng)用相結(jié)合的重要性,并提高了自己組織數(shù)據(jù)及編寫大型程序的能力。培養(yǎng)了基本的、良好的程序設(shè)計技能以及合作能力。這次課程設(shè)計同樣提高了我的綜合運用所學(xué)知識的能力。并對vc有了更深入的了解?!稊?shù)據(jù)結(jié)構(gòu)》是一門實踐性很強的課程,上機實習(xí)是對學(xué)生全面綜合素質(zhì)進行訓(xùn)練的一種最基本的方法,是與課堂聽講、自學(xué)和練習(xí)相輔相成的、必不可少的一個教學(xué)環(huán)節(jié)。上機實習(xí)一方面能使書本上的知識變“活”,起到深化理解和靈活掌握教學(xué)內(nèi)容的目的;另一方面,上機實習(xí)是對學(xué)生軟件設(shè)計的綜合能力的訓(xùn)練,包括問題分析,總體結(jié)構(gòu)設(shè)計,程序設(shè)計基本技能和技巧的訓(xùn)練。此外,還有更重要的一點是:機器是比任何教師更嚴厲的檢查者。因此,在“數(shù)據(jù)結(jié)構(gòu)”的學(xué)習(xí)過程中,必須嚴格按照老師的要求,主動地、積極地、認真地做好每一個實驗,以不斷提高自己的編程能力與專業(yè)素質(zhì)。
    通過這段時間的課程設(shè)計,我認識到數(shù)據(jù)結(jié)構(gòu)是一門比較難的課程。需要多花時間上機練習(xí)。這次的程序訓(xùn)練培養(yǎng)了我實際分析問題、編程和動手能力,使我掌握了程序設(shè)計的基本技能,提高了我適應(yīng)實際,實踐編程的能力。
    總的來說,這次課程設(shè)計讓我獲益匪淺,對數(shù)據(jù)結(jié)構(gòu)也有了進一步的理解和認識。
    時光荏苒,如白駒過隙般匆匆而去,眼看的一年實習(xí)生活馬上就要成為美好的回憶。在這短短一年的時間里我感覺自己成長了許多,從象牙塔邁出的第一步走的特別的穩(wěn)重,感謝學(xué)校給我提供了一個努力拼搏的舞臺,讓我學(xué)會了如何面對這個真實的社會,實現(xiàn)了從在校學(xué)子向職場人士的轉(zhuǎn)變。
    實習(xí)是繼中考后又一個人生的十字路口,它意味著人生一個新時期的到來——告別學(xué)校走入社會。社會是個大的集合,不管是以前的學(xué)校還是現(xiàn)在的實習(xí)單位都同屬這個集合。這幾個月來,給我感覺學(xué)校純一點,單位復(fù)雜一點。不過我知道不論學(xué)校還是單位其實都是社會的縮影。實習(xí)的真正目的就是讓我們這些在校的學(xué)生走入社會。社會是形形色色、方方面面的,你要學(xué)會的是適應(yīng)這個社會而不是讓這個社會適應(yīng)你。
    剛剛走進社會不適應(yīng)是正常的。人有的時候很奇怪:心情或者更準(zhǔn)確地說是熱情往往會因時間、環(huán)境、所經(jīng)歷的事而起伏。就像我對境界一詞的理解:人與他所受教育、所處環(huán)境、所經(jīng)歷對事物的理解、判斷、預(yù)知的程度就是這個人的境界。
    作為一名中專生,專業(yè)需求的建筑認識實訓(xùn)開始了,我們?nèi)珜I(yè)的同學(xué)在xx的各大建筑工地認識實習(xí),對于我當(dāng)初選擇土木工程這樣的專業(yè),說真的我并不知道什么是土木工程?,F(xiàn)在我對土木工程有了基本的感性認識了,我想任何事的認識都是通過感性認識上升到理性認識的,這次認識實習(xí)應(yīng)該是一個鍛煉的好機會!
    土木工程是建造各類工程設(shè)施的學(xué)科、技術(shù)和工程的總稱。它既指與與人類生活、生產(chǎn)活動有關(guān)的各類工程設(shè)施,如建筑公程、公路與城市道路工程、鐵路工程、橋梁工程、隧道工程等,也指應(yīng)用材料、設(shè)備在土地上所進行的勘測、設(shè)計、施工等工程技術(shù)活動。
    我應(yīng)該知道現(xiàn)在的我還不夠成熟,如果說人生是一片海洋,那么我應(yīng)該在這片海洋里劈波斬浪,揚帆遠航而不是躲在避風(fēng)港里。只要經(jīng)歷多了,我就會成熟;我就會變強。我相信。那時的成功是領(lǐng)導(dǎo)、師傅們給我鼓勵,是實習(xí)的經(jīng)歷給我力量,所以我感謝領(lǐng)導(dǎo)師傅還有我的好朋友們,也感謝學(xué)校給我這次實習(xí)的機會。
    一年的實習(xí)生活中,緊張過,努力過,醒悟過,開心過。這些從為有過的經(jīng)歷讓我進步了,成長了。學(xué)會了一些在學(xué)校從未學(xué)過以后也學(xué)不到的東西,也有很多的感悟。
    這學(xué)期開始兩周時間是我們自己選題上機的時間,這學(xué)期開始兩周時間是我們自己選題上機的時間,雖然上機時間只有短短兩個星期但從中確實學(xué)到了不少知識。上機時間只有短短兩個星期但從中確實學(xué)到了不少知識。數(shù)據(jù)結(jié)構(gòu)可以說是計算機里一門基礎(chǔ)課程,據(jù)結(jié)構(gòu)可以說是計算機里一門基礎(chǔ)課程,但我覺得我們一低計算機里一門基礎(chǔ)課程定要把基礎(chǔ)學(xué)扎實,定要把基礎(chǔ)學(xué)扎實,然而這次短短的上機幫我又重新鞏固了c語言知識,讓我的水平又一部的提高。數(shù)據(jù)結(jié)構(gòu)這是一門語言知識讓我的水平又一部的提高。數(shù)據(jù)結(jié)構(gòu)這是一門知識,純屬于設(shè)計的科目,它需用把理論變?yōu)樯蠙C調(diào)試。
    純屬于設(shè)計的科目,它需用把理論變?yōu)樯蠙C調(diào)試。它對我們來說具有一定的難度。它是其它編程語言的一門基本學(xué)科。來說具有一定的難度。它是其它編程語言的一門基本學(xué)科。我選的上機題目是交叉合并兩個鏈表,對這個題目,我選的上機題目是交叉合并兩個鏈表,對這個題目,我覺得很基礎(chǔ)。剛開始調(diào)試代碼的時候有時就是一個很小的錯覺得很基礎(chǔ)。剛開始調(diào)試代碼的時候有時就是一個很小的錯調(diào)試代碼的時候誤,導(dǎo)致整個程序不能運行,然而開始的我還沒從暑假的狀導(dǎo)致整個程序不能運行,態(tài)轉(zhuǎn)到學(xué)習(xí)上,每當(dāng)程序錯誤時我都非常焦躁,態(tài)轉(zhuǎn)到學(xué)習(xí)上,每當(dāng)程序錯誤時我都非常焦躁,甚至想到了放棄,但我最終找到了狀態(tài),一步一步慢慢來,放棄,但我最終找到了狀態(tài),一步一步慢慢來,經(jīng)過無數(shù)次的檢查程序錯誤的原因后慢慢懂得了耐心是一個人成功的必然具備的條件!
    決問題和在老師的幫助下一步一步慢慢的正確運行程序,決問題和在老師的幫助下一步一步慢慢的正確運行程序,終于完成了這次課程設(shè)計,于完成了這次課程設(shè)計,雖然這次課程設(shè)計結(jié)束了但是總覺得自已懂得的知識很是不足,學(xué)無止境,得自已懂得的知識很是不足,學(xué)無止境,以后還會更加的努力深入的學(xué)習(xí)。力深入的學(xué)習(xí)。
    數(shù)據(jù)結(jié)構(gòu)與算法課程心得體會篇十一
    課程設(shè)計是《數(shù)據(jù)結(jié)構(gòu)》課程的一個重要的實踐環(huán)節(jié),它可加深學(xué)生對該課程所學(xué)內(nèi)容的進一步的理解與鞏固,達到理論與實際應(yīng)用相結(jié)合,提高學(xué)生組織數(shù)據(jù)及編寫大型程序的能力,培養(yǎng)基本的對基本數(shù)據(jù)結(jié)構(gòu)的理解和運用,良好的程序設(shè)計方法、提高編碼及調(diào)試程序技能的能力,為整個專業(yè)的學(xué)習(xí)以及軟件設(shè)計水平的提高打下良好的基礎(chǔ)。
    二、設(shè)計內(nèi)容。
    每位學(xué)生可以從《數(shù)據(jù)結(jié)構(gòu)課程設(shè)計備選題目》中選擇一個題目自行完成。要求每班中題目不能重復(fù)。
    三、設(shè)計要求。
    1.學(xué)生必須仔細閱讀《數(shù)據(jù)結(jié)構(gòu)課程設(shè)計任務(wù)書》,認真主動完成課設(shè)的要求。有問題及時主動通過各種方式與指導(dǎo)教師聯(lián)系溝通。
    2.學(xué)生要發(fā)揮自主學(xué)習(xí)的能力,充分利用時間,安排好課設(shè)的時間計劃,并在課設(shè)過程中不斷檢測自己的計劃完成情況,及時向教師匯報。
    3.課程設(shè)計按照教學(xué)要求需要兩周時間完成,學(xué)院安排設(shè)計時。
    間學(xué)生不得缺席。
    4、每位學(xué)生必須認真、獨立完成設(shè)計任務(wù),發(fā)現(xiàn)抄襲者或雷同者,一律按零分處理。
    5、程序設(shè)計語言可選擇c或c++。
    6、程序要正確且具有一定的健壯性,不會因為用戶的輸入錯誤引起程序運行錯誤而中斷執(zhí)行,對輸入值的類型、大小范圍、字符串的長度等,進行正確性檢查,對不合法的輸入值給出出錯信息,指出錯誤類型,等待重新輸入。
    四、上交相關(guān)內(nèi)容要求。
    上交的成果的內(nèi)容必須由以下三個部分組成,缺一不可。
    3.課程設(shè)計報告:(保存在word文檔中,文件名要求按照“學(xué)號_姓名_課程設(shè)計報告題目”起名,如文件名為“001_張三_二叉樹動態(tài)演示”.doc)。報告要求文字工整通順、圖表規(guī)范、思路清楚、內(nèi)容正確。設(shè)計報告必須按照規(guī)定格式規(guī)范,a4紙雙面打印、裝訂。
    將以上三個部分放在一個文件夾里,文件夾名要求按照"學(xué)號_姓名_課程設(shè)計報告題目”.zip命名。每個班將所有學(xué)生的文件夾收集起來刻成光盤上交。
    五、時間安排。
    設(shè)計時間為兩周(7.07—7.18),7月16日—7月18日答辯??己朔绞?。
    成績按五分制,包括課程設(shè)計過程、課程設(shè)計結(jié)果、課程設(shè)計報告三部分。其中:
    課程設(shè)計過程:20%。
    包括設(shè)計態(tài)度(10分)、出勤(10分)。
    課程設(shè)計結(jié)果:40%。
    其中:程序正確性:30分,運行效果:10分,答辯:10分。課程設(shè)計報告:40%。
    其中:正確性:20分,完整性:10分,規(guī)范性:10分。
    六、設(shè)計報告格式。
    數(shù)據(jù)結(jié)構(gòu)與算法課程心得體會篇十二
    一、基本信息。
    課程編號:e1132107課程類別:學(xué)科基礎(chǔ)課必修課適用層次:本科。
    二、教學(xué)目的。
    數(shù)據(jù)結(jié)構(gòu)與算法課程設(shè)計不僅是數(shù)據(jù)結(jié)構(gòu)與算法課程的實踐教學(xué)環(huán)節(jié),而且是一門綜合性實驗項目。通過這個實驗,培養(yǎng)學(xué)生綜合運用數(shù)據(jù)結(jié)構(gòu)基本知識和程序設(shè)計基本知識,解決實際問題,提高程序設(shè)計的能力和團隊協(xié)作精神。
    本課程設(shè)計的目的就是要達到理論與實際應(yīng)用相結(jié)合,使同學(xué)們能夠根據(jù)數(shù)據(jù)對象的特性,學(xué)會數(shù)據(jù)組織的方法,能把現(xiàn)實世界中的實際問題在計算機內(nèi)部表示出來,并培養(yǎng)基本的、良好的程序設(shè)計技能。
    1.學(xué)生通過實踐掌握線性表、樹、圖等數(shù)據(jù)結(jié)構(gòu)的存儲結(jié)構(gòu)及算法實現(xiàn);2.培養(yǎng)學(xué)生利用數(shù)據(jù)結(jié)構(gòu)知識解決實際問題的能力;3.使學(xué)生初步具備查閱資料、分析設(shè)計、上機實現(xiàn)和書寫科技報告的能力。
    三、基本要求。
    1.指導(dǎo)教師要在選題、設(shè)計、上機實現(xiàn)等諸環(huán)節(jié)上投入精力,加強指導(dǎo)、討論和答疑的力度。尤其在選題上,要充分考慮學(xué)生目前所具有的知識水平、掌握的開發(fā)工具、以及綜合設(shè)計能力的現(xiàn)狀,使題目取材合理、大小適中、難易適度,使學(xué)生在完成設(shè)計工作后,能有所收獲。2.參加課程設(shè)計的學(xué)生要珍惜機會、勤奮工作、勇于創(chuàng)新、勇于探索、勇于實踐,虛心向指導(dǎo)教師請教,向同學(xué)學(xué)習(xí),獨立完成設(shè)計任務(wù)。
    3.學(xué)生需保質(zhì)、保量、保時間進度地提交規(guī)范的課程設(shè)計報告,審查由指導(dǎo)教師負責(zé)。
    四、教學(xué)內(nèi)容。
    1.主要內(nèi)容:應(yīng)用所掌握的線性表、樹、圖等數(shù)據(jù)結(jié)構(gòu)知識解決實際問題。2.軟件開發(fā)工具:c/c++、java。
    3.課程設(shè)計題目:指導(dǎo)教師擬定(參考題目見附錄1)。
    4.具體步驟:指導(dǎo)教師擬定設(shè)計題目,學(xué)生研究具體問題、進行需求分析、選擇合適的數(shù)據(jù)結(jié)構(gòu)、設(shè)計算法、編寫并調(diào)試代碼、書寫文檔材料、提交設(shè)計報告,最后,由指導(dǎo)教師驗收并評定成績。
    5.設(shè)計內(nèi)容及時間安排:第1-3天,選定題目,明確題目要求、確定數(shù)據(jù)結(jié)構(gòu)、設(shè)計算法,并分析算法復(fù)雜度;第4-8天,編寫程序、調(diào)試程序、測試程序;第9-10天,撰寫設(shè)計報告,準(zhǔn)備答辯(上機演示,回答教師提問)。6.設(shè)計報告書寫要求:按照軟件開發(fā)規(guī)范的要求書寫設(shè)計報告(參見附錄三報告書寫格式);要求報告層次結(jié)構(gòu)清晰、圖表完整、語言通順、字跡工整。7.驗收要求:1)運行所設(shè)計的程序;2)回答有關(guān)問題;3)提交課程設(shè)計報告(打印或手寫在實習(xí)報告冊上);4)提交軟盤(源程序)。(鼓勵學(xué)生創(chuàng)新。對內(nèi)容有創(chuàng)新者,成績評定將適當(dāng)提高)。
    五、考核方法。
    學(xué)習(xí)成績的評定方式:考查。
    課程設(shè)計成績評定=平時出勤(20%)+設(shè)計報告(40%)+答辯(40%)通過設(shè)計答辯方式,并結(jié)合學(xué)生的動手能力,獨立分析解決問題的能力和創(chuàng)新精神,總結(jié)報告和答辯水平以及學(xué)習(xí)態(tài)度綜合考評。成績分為優(yōu)、良、中、及格和不及格五等。
    六、教材與參考資料1.建議教材:
    2.建議參考書目:
    附錄一。
    參考題目(可分若干組,每個學(xué)生選擇其中一個題目)。
    1.商廈家電庫存管理2.排序算法的時間比較。
    16.文字統(tǒng)計系統(tǒng)—文字研究助手17.修道士野人問題18.考試問題。
    19.計算機輔助考核系統(tǒng)20.學(xué)籍管理系統(tǒng)。
    注:學(xué)生可以自選題目或選擇指導(dǎo)老師擬定的題目。
    附錄二。
    開發(fā)步驟。
    1.分析題目的要求、目的;2.選擇適當(dāng)?shù)臄?shù)據(jù)結(jié)構(gòu);
    3.抽象數(shù)據(jù)類型的設(shè)計;4.抽象數(shù)據(jù)類型的實現(xiàn);5.編寫代碼、上機調(diào)試;6.總結(jié)驗收、評價。
    附錄三報告書寫格式。
    1.問題描述。
    題目內(nèi)容、基本要求2.需求分析。
    軟件的基本功能、輸入/輸出形式、測試數(shù)據(jù)要求3.概要設(shè)計。
    所需的adt及作用、主程序流程及模塊調(diào)用關(guān)系4.詳細設(shè)計。
    編碼與調(diào)試過程中遇到的問題及解決的辦法,還存在哪些沒有解決的問題?6.使用說明。
    簡要說明程序運行操作步驟7.測試結(jié)果。
    8.課程設(shè)計心得體會。
    數(shù)據(jù)結(jié)構(gòu)與算法課程心得體會篇十三
    通過本次課程設(shè)計,對圖的概念有了一個新的認識,在學(xué)習(xí)離散數(shù)學(xué)的時候,總覺得圖是很抽象的東西,但是在學(xué)習(xí)了《數(shù)據(jù)結(jié)構(gòu)與算法》這門課程之后,我慢慢地體會到了其中的`奧妙,圖能夠在計算機中存在,首先要捕捉他有哪些具體化、數(shù)字化的信息,比如說權(quán)值、頂點個數(shù)等,這也就說明了想要把生活中的信息轉(zhuǎn)化到計算機中必須用數(shù)字來完整的構(gòu)成一個信息庫,而圖的存在,又涉及到了頂點之間的聯(lián)系。圖分為有向圖和無向圖,而無向圖又是有向圖在權(quán)值雙向相等下的一種特例,如何能在計算機中表示一個雙向權(quán)值不同的圖,這就是一件很巧妙的事情,經(jīng)過了思考和老師同學(xué)的幫助,我用edges[i][j]=up和edges[j][i]=up就能實現(xiàn)了一個雙向圖信息的存儲。
    對整個程序而言,dijkstra算法始終都是核心內(nèi)容,其實這個算法在實際思考中并不難,也許我們誰都知道找一個路徑最短的方法,及從頂點一步一步找最近的路線并與其直接距離相比較,但是,在計算機中實現(xiàn)這么一個很簡單的想法就需要涉及到很多專業(yè)知識,為了完成設(shè)計,在前期工作中,基本都是以學(xué)習(xí)c語言為主,所以浪費了很多時間,比如說在程序中,刪除頂點和增加頂點的模塊中都有和建圖模塊相互重復(fù)的函數(shù),但是由于技術(shù)的原因,只能做一些很累贅的函數(shù),可見在調(diào)用知識點,我沒有掌握好。
    不過,有了這次課程設(shè)計的經(jīng)驗和教訓(xùn),我能夠很清楚的對自己定一個合適的水平,而且在這次課程設(shè)計中我學(xué)會了運用兩個新的函數(shù)sprintf和包涵在#include頭文件中的輸入函數(shù)。因為課程設(shè)計的題目是求最短路徑,本來是想通過算法的實現(xiàn)把這個程序與交通情況相連,但是因為來不及查找各地的信息,所以,這個計劃就沒有實現(xiàn),我相信在以后有更長時間的情況下,我會做出來的。
    1、鞏固和加深了對數(shù)據(jù)結(jié)構(gòu)的理解,提高綜合運用本課程所學(xué)知識的能力。
    2、培養(yǎng)了我選用參考書,查閱手冊及文獻資料的能力。培養(yǎng)獨立思考,深入研究,分析問題、解決問題的能力。
    3、通過實際編譯系統(tǒng)的分析設(shè)計、編程調(diào)試,掌握應(yīng)用軟件的分析方法和工程設(shè)計方法。
    4、通過課程設(shè)計,培養(yǎng)了我嚴肅認真的工作作風(fēng),逐步建立正確的生產(chǎn)觀念、經(jīng)濟觀念和全局觀念。
    根據(jù)我在實習(xí)中遇到得問題,我將在以后的學(xué)習(xí)過程中注意以下幾點:
    1、認真上好專業(yè)實驗課,多在實踐中鍛煉自己。
    2、寫程序的過程中要考慮周到,嚴密。
    3、在做設(shè)計的時候要有信心,有耐心,切勿浮躁。
    4、認真的學(xué)習(xí)課本知識,掌握課本中的知識點,并在此基礎(chǔ)上學(xué)會靈活運用。
    5、在課余時間里多寫程序,熟練掌握在調(diào)試程序的過程中所遇到的常見錯誤,以便能節(jié)省調(diào)試程序的時間。
    這是一門純屬于設(shè)計的科目,它需用把理論變?yōu)樯蠙C調(diào)試。在學(xué)習(xí)科目的第一節(jié)課起,李老師就為我們闡述了它的重要性。它對我們來說具有一定的難度。它是其它編程語言的一門基本學(xué)科。
    剛開始學(xué)的時候確實有很多地方我很不理解,每次上課時老師都會給我們出不同的設(shè)計題目,對于我們一個初學(xué)者來說,無疑是一個具大的挑戰(zhàn),撞了幾次壁之后,我決定靜下心來,仔細去寫程序。老師會給我們需要編程的內(nèi)容一些講解,順著老師的思路,來完成自己的設(shè)計,我們可以開始運行自己的程序,可是好多處的錯誤讓人看的可怕,還看不出到底是哪里出現(xiàn)了錯誤,但是程序還是得繼續(xù)下去,我多次請教了老師和同學(xué),逐漸能自己找出錯誤,并加以改正。
    tc里檢查錯誤都是用英文來顯示出來的,經(jīng)過了這次課程設(shè)計,現(xiàn)在已經(jīng)可以了解很多錯誤在英文里的提示,這對我來說是一個突破性的進步,眼看著一個個錯誤通過自己的努力在我眼前消失,覺得很是開心。此次的程序設(shè)計能夠成功,是我和我的同學(xué)三個人共同努力作用的結(jié)果。在這一段努力學(xué)習(xí)的過程中,我們的編程設(shè)計有了明顯的提高。
    其實現(xiàn)在想起來,收獲還真是不少,雖然說以前非常不懂這門語言,在它上面花費了好多心血,覺得它很難,是需用花費了大量的時間編寫出來的?,F(xiàn)在真正的明白了一些代碼的應(yīng)用,每個程序都有一些共同點,通用的結(jié)構(gòu),相似的格式。只要努力去學(xué)習(xí),就會靈活的去應(yīng)用它。
    數(shù)據(jù)結(jié)構(gòu)與算法課程心得體會篇十四
    近期,我參加了一門關(guān)于算法的課程,并深有所感。在這門課程中,我學(xué)到了許多有關(guān)算法設(shè)計和分析的知識,不僅提高了自己的編程能力,還培養(yǎng)了解決問題的思維方式。通過這門課程的學(xué)習(xí),我發(fā)現(xiàn)算法是計算機科學(xué)中至關(guān)重要的一部分,它可以幫助我們解決實際問題,并改善代碼的執(zhí)行效率。下面,我將從學(xué)習(xí)收獲、應(yīng)用實踐、團隊合作、問題解決和對未來的展望五個方面,介紹我對算法課程的心得體會。
    第一段:學(xué)習(xí)收獲。
    在算法課程中,我學(xué)到了許多有關(guān)算法設(shè)計和分析的知識。我首先了解了各種常見的算法和數(shù)據(jù)結(jié)構(gòu),包括排序、搜索、圖論等。通過學(xué)習(xí)他們的實現(xiàn)原理和時間復(fù)雜度,我能更好地理解并掌握它們的使用方法。同時,我還學(xué)習(xí)了如何評估算法的性能,并學(xué)會了使用算法來解決實際問題。此外,我還學(xué)會了如何在不同的場景中應(yīng)用不同的算法,選擇最適合的方法來解決問題。這些知識對于提高我的編程能力和解決實際問題非常有幫助。
    第二段:應(yīng)用實踐。
    在課程中,我們不僅學(xué)習(xí)了理論知識,還進行了大量的實踐練習(xí)。我們通過編寫代碼來實現(xiàn)各種算法,并通過對比不同算法的執(zhí)行效率來評估它們的優(yōu)劣。這些實踐練習(xí)鍛煉了我的編程能力,讓我更加熟悉各種算法和數(shù)據(jù)結(jié)構(gòu)的實現(xiàn)方式。通過不斷地實踐,我能夠更快地理解和記憶算法的思想,提高自己解決問題的能力。
    第三段:團隊合作。
    在算法課程中,我們還有許多的團隊合作項目。通過分組合作,我們可以共同解決一些復(fù)雜的問題,并學(xué)會與團隊成員進行合作和溝通。在團隊合作中,每個人都發(fā)揮自己的專長,共同努力完成任務(wù)。通過這樣的合作,我們可以集思廣益,獲得更好的解決方案。團隊合作不僅促進了我的學(xué)習(xí),還培養(yǎng)了我的團隊合作意識和能力。
    第四段:問題解決。
    在學(xué)習(xí)算法的過程中,我遇到了許多難題和困難。但通過努力和堅持,我逐漸學(xué)會了如何解決這些問題。我學(xué)會了進行問題分析,找出問題的本質(zhì)所在,并尋找相應(yīng)的解決方案。我也學(xué)會了尋求幫助,與同學(xué)和老師一起討論問題,并尋找解決思路。在這個過程中,我不僅解決了許多具體的問題,還提高了自己的綜合思考和解決問題的能力。
    第五段:對未來的展望。
    通過學(xué)習(xí)算法課程,我意識到學(xué)習(xí)算法不僅僅是為了應(yīng)付考試,更是為了將來的發(fā)展。算法是計算機科學(xué)中的核心,無論是工作還是研究,都需要具備扎實的算法基礎(chǔ)。未來,我希望能夠繼續(xù)深入學(xué)習(xí)算法,并將其應(yīng)用到更多的實際問題中。我相信,通過不斷學(xué)習(xí)和實踐,我能夠不斷提高自己的編程能力和問題解決能力,為未來的發(fā)展打下堅實的基礎(chǔ)。
    總結(jié):
    通過這門算法課程的學(xué)習(xí),我不僅提高了自己的編程能力,還培養(yǎng)了解決問題的思維方式。學(xué)習(xí)算法不僅僅是為了應(yīng)付考試,更是為了提高自己的解決問題的能力和未來的發(fā)展。在未來的道路上,我將繼續(xù)堅持學(xué)習(xí)和實踐,不斷提高自己的算法能力,并將其應(yīng)用到實際問題中,為自己的發(fā)展打下堅實的基礎(chǔ)。
    數(shù)據(jù)結(jié)構(gòu)與算法課程心得體會篇十五
    通過這次課程設(shè)計使我進一步達到理論與實際相結(jié)合,提高了自己組織數(shù)據(jù)及編寫程序的能力,使我們能夠根據(jù)問題要求和數(shù)據(jù)對象的特性,學(xué)會數(shù)據(jù)組織的方法,把現(xiàn)實世界中的實際問題在計算機內(nèi)部表示出來并用軟件解決問題,培養(yǎng)良好的程序設(shè)計技能,掌握設(shè)計程序的思路,學(xué)會用計算機語言編寫程序,以實現(xiàn)所需處理的任務(wù),鍛煉自己的動腦能力,學(xué)會用自己的思路解決現(xiàn)實中的實際問題,雖然一開始也走了一些彎路不過在同學(xué)和老師的點撥下完成了該程序,這次課程設(shè)計中遇到了很多問題,一開始準(zhǔn)備用二維數(shù)組存放的可考慮到同一個學(xué)校同一個項目有好幾個人參加,就不能用二維數(shù)組了,如果每個學(xué)校都申請一個二維數(shù)組也非常不方便,還是用順序表方便也不浪費空間,在這次課程設(shè)計的過程中雖然很多次都參照了課本及資料,不過這使我更加熟悉了順序表以及結(jié)構(gòu)體的定義及實現(xiàn),調(diào)試過程中也遇到了一些問題也都是自己獨立思考完成的,還有一個體會是,遇到不會的地方可以參考課本也可以去圖書館或網(wǎng)上查資料,當(dāng)然主要思路有了也就簡單點了。在老師的答辯指指導(dǎo)下,程序數(shù)組那塊程序的書寫老師問我為什么是那樣的,當(dāng)時寫這塊程序的時候是看書上數(shù)組那塊程序再加上自己的主觀想法覺得就是這樣寫的,雖然這塊程序當(dāng)時那種主觀想法是寫對了,但是經(jīng)過老師的答辯提問才知道雖然是寫對了,但是這種思考和想法是錯誤不科學(xué)的,真正的是因為第2次循環(huán)是因為第一次釋放了一個。所以通過這次課程設(shè)計讓我懂得了一個很重要的道理,就是以后如果哪地方有一點迷惑,有一點不懂的地方不能憑自己主觀的思考和想法覺得應(yīng)該是這樣的,一定要找老師問清楚為什么是這樣的,一定要把每步每個小程序都要搞的十分的清楚,這真是個很好的收獲。還有就是這個程序的男女問題上,開始準(zhǔn)備在結(jié)構(gòu)體中加一個sex的點,大使那樣對與男女項目還是有點麻煩,后來在同學(xué)的提醒下,通過參賽項目號就可以解決了,比m大就是女子項目,比m小或者等于m就是男子項目。這樣就可以很完美地解決這個問題了。
    其實,當(dāng)你實驗遇到問題時,自己會通過很多途徑去解決它,沒有解決時,心急如焚,解決之后的那種快感是前所未有的,這也許就是付出了行動之后的收獲吧!
    這也教會了我們以后在社會上,遇見了事情不可怕,只要不被困難擊倒,解決了它,那樣我們就是勝利的!
    數(shù)據(jù)結(jié)構(gòu)與算法課程心得體會篇十六
    推薦:“數(shù)據(jù)結(jié)構(gòu)與算法課程設(shè)計”是計算機科學(xué)與技術(shù)專業(yè)學(xué)生的集中實踐性環(huán)節(jié)之一,是學(xué)習(xí)“數(shù)據(jù)結(jié)構(gòu)與算法”理論和實驗課程后進行的一次全面的綜合練習(xí)。其目的是要達到理論與實際應(yīng)用相結(jié)合,提高學(xué)生組織數(shù)據(jù)及編寫程序的能力,使學(xué)生能夠根據(jù)問題要求和數(shù)據(jù)對象的特性,學(xué)會數(shù)據(jù)組織的方法,把現(xiàn)實世界中的實際問題在計算機內(nèi)部表示出來并用軟件解決問題,培養(yǎng)良好的程序設(shè)計技能。
    當(dāng)初拿到這次課程設(shè)計題目時,似乎無從下手,但是經(jīng)過分析可知,對于簡單文本編輯器來說功能有限,不外乎創(chuàng)作文本、顯示文本、統(tǒng)計文本中字母―數(shù)字―空格―特殊字符―文本總字數(shù)、查找、刪除及插入這幾項功能。于是,我進行分模塊進行編寫程序。雖然每個模塊程序并不大,但是每個模塊都要經(jīng)過一番思考才能搞清其算法思想,只要有了算法思想,再加上c程序語言基礎(chǔ),基本完成功能,但是,每個模塊不可能一次完成而沒有一點錯誤,所以,我給自己定了一個初級目標(biāo):用c語言大體描述每個算法,然后經(jīng)調(diào)試后改掉其中明顯的錯誤,并且根據(jù)調(diào)試結(jié)果改正一些算法錯誤,當(dāng)然,這一目標(biāo)實現(xiàn)較難。最后,經(jīng)過反復(fù)思考,看一下程序是否很完善,如果能夠達到更完善當(dāng)然最好。并非我們最初想到的算法就是最好的算法,所以,有事我們會而不得不在編寫途中終止換用其他算法,但是,我認為這不是浪費時間,而是一種認識過程,在編寫程序中遇到的問題會為我們以后編寫程序積累經(jīng)驗,避免再犯同樣的錯誤。但是,有的方法不適用于這個程序,或許會適用于另外一個程序。所以,探索的過程是成長的過程,是為成功做的鋪墊。經(jīng)過努力后獲得成功,會更有成就感。
    在課程設(shè)計過程中通過獨立解決問題,首先分析設(shè)計題目中涉及到的數(shù)據(jù)類型,在我們學(xué)習(xí)的數(shù)據(jù)存儲結(jié)構(gòu)中不外乎線性存儲結(jié)構(gòu)及非線性存儲結(jié)構(gòu),非線性存儲結(jié)構(gòu)中有樹型,集合型,圖型等存儲結(jié)構(gòu),根據(jù)數(shù)據(jù)類型設(shè)計數(shù)據(jù)結(jié)點類型。然后根據(jù)設(shè)計題目的主要任務(wù),設(shè)計出程序大體輪廓(包括子函數(shù)和主函數(shù)),然后對每個子函數(shù)進行大體設(shè)計,過程中錯誤在所難免,所以要經(jīng)過仔細探索,對每個函數(shù)進行改進。
    程序基本完成后,功能雖然齊全,但是程序是否完善(例如,輸入數(shù)據(jù)時是否在其范圍之內(nèi),所以加入判斷語句是很有必要的)還需運行測試多次,如有發(fā)現(xiàn)應(yīng)該對其進行改善,當(dāng)然要在力所能及的前提下。
    課程設(shè)計過程雖然短暫,但是使我深刻理解數(shù)據(jù)結(jié)構(gòu)和算法課程對編程的重要作用,還有“數(shù)據(jù)結(jié)構(gòu)與算法”還提供了一些常用的基本算法思想及算法的編寫程序。通過獨立完成設(shè)計題目,使我系統(tǒng)了解編程的基本步驟,提高分析和解決實際問題的能力。通過實踐積累經(jīng)驗,才能有所創(chuàng)新。正所謂,良好的基礎(chǔ)決定上層建筑。只有基本功做好了,才有可能做出更好的成果。
    數(shù)據(jù)結(jié)構(gòu)與算法課程心得體會篇十七
    優(yōu)秀作文推薦:課程設(shè)計是計算機科學(xué)與技術(shù)專業(yè)學(xué)生的集中實踐性環(huán)節(jié)之一,是學(xué)習(xí)“數(shù)據(jù)結(jié)構(gòu)與算法”理論和實驗課程后進行的一次全面的綜合練習(xí)。其目的是要達到理論與實際應(yīng)用相結(jié)合,使學(xué)生能夠根據(jù)問題要求和數(shù)據(jù)對象的特性,學(xué)會數(shù)據(jù)組織的方法,把現(xiàn)實世界中的實際問題在計算機內(nèi)部表示出來并用軟件解決問題,培養(yǎng)良好的程序設(shè)計技能。
    在這次課程設(shè)計當(dāng)中,我了解到了我的不足,如算法的不完善、不細心和耐心不是很好等等。不細心的我在調(diào)試程序時,老是因為某個書寫錯誤導(dǎo)致錯誤;對這些錯誤,我不得不花大量的時間去更正,并且還要重復(fù)檢查是否出現(xiàn)雷同的錯誤而導(dǎo)致程序不能運行。但是通過這次課程設(shè)計,我的這些缺點有些改善。我在寫新的程序時,首先要考慮的深入一點、仔細一點,這樣要修改程序的時間就會少很多。并且也不會因為自己不細心而導(dǎo)致的浪費時間的情況出現(xiàn)。
    在進行程序設(shè)計時,要注意想好思路。即要有恰當(dāng)模塊名、變量名、常量名、子程序名等。將每個功能的模塊,即函數(shù)名要清晰的表述出來,使用戶能夠一目了然此程序的功能。當(dāng)然適當(dāng)?shù)?給寫注釋,也是方便用戶的理解。還有在編寫程序時要注意對程序的適當(dāng)分配,便于用戶看懂程序,也便于自己檢查城市。但是完成任何一個較大的程序,都需要掌握一定的編程基礎(chǔ),需要不斷的探索和求知過程,這樣對自己編程能力的提高有較大的幫助。當(dāng)然,任何程序必須經(jīng)過計算機的調(diào)試,看是否調(diào)試成功,發(fā)現(xiàn)錯誤,一個個,一步步去解決,這樣就能從錯誤中進步。
    通過課程設(shè)計加強了我的動手能力,以及提升了局部和統(tǒng)一考慮問題的思維方式?;仡櫰鸫舜握n程設(shè)計,至今我仍感慨頗多,的確,從從拿到題目到完成整個編程,從理論到實踐,在整整半個月的日子里,可以學(xué)到很多很多的的東西,同時不僅可以鞏固了以前所學(xué)過的知識,而且學(xué)到了很多在書本上所沒有學(xué)到過的知識。通過這次課程設(shè)計使我懂得了理論與實際相結(jié)合是很重要的,只有理論知識是遠遠不夠的,只有把所學(xué)的理論知識與實踐相結(jié)合起來,從理論中得出結(jié)論,才能真正為社會服務(wù),從而提高自己的實際動手能力和獨立思考的能力。在設(shè)計的過程中遇到問題,可以說得是困難重重,這畢竟第一次做的,難免會遇到過各種各樣的問題,同時在設(shè)計的過程中發(fā)現(xiàn)了自己的不足之處,對以前所學(xué)過的知識理解得不夠深刻,掌握得不夠牢固,比如說結(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)和嚴格的訓(xùn)練,學(xué)會數(shù)據(jù)組織的方法,把現(xiàn)實世界中的實際問題在計算機內(nèi)部表示出來并用軟件解決問題,培養(yǎng)了良好的程序設(shè)計技能。
    在這次課程設(shè)計中,得到了好多同學(xué)的幫助以及老師的指導(dǎo),在此要表達我真誠的謝意!
    數(shù)據(jù)結(jié)構(gòu)與算法課程心得體會篇十八
    計算機技術(shù)已成為現(xiàn)代化發(fā)展的重要支柱和標(biāo)志,并逐步滲透到人類生活的各個領(lǐng)域。隨著計算機硬件的發(fā)展,對計算機軟件的發(fā)展也提出了越來越高的要求。由于軟件的核心是算法,而算法實際上是對加工數(shù)據(jù)過程的描述,所以研究數(shù)據(jù)結(jié)構(gòu)對提高編程能力和設(shè)計高性能的算法是至關(guān)重要的。
    非數(shù)值計算問題的數(shù)學(xué)模型不再是傳統(tǒng)的數(shù)學(xué)方程問題,而是諸如表、樹、圖之類的數(shù)據(jù)結(jié)構(gòu)。因此,簡單地說,數(shù)據(jù)結(jié)構(gòu)是一門研究非數(shù)值計算的程序設(shè)計問題的學(xué)科,主要研究數(shù)據(jù)的邏輯結(jié)構(gòu)、存儲結(jié)構(gòu)和算法。
    一、教學(xué)目的與要求---了解數(shù)據(jù)的邏輯結(jié)構(gòu)和物理結(jié)構(gòu);
    教學(xué)要求在每章教學(xué)內(nèi)容給出,大體上為三個層次:了解、掌握和熟練掌握。他們的含義大致為:了解是正確理解概念,掌握是學(xué)會所學(xué)知識,熟練掌握就是運用所學(xué)知識解決實際問題。
    教學(xué)目的為:了解算法對于程序設(shè)計的重要性;學(xué)習(xí)掌握基本數(shù)據(jù)結(jié)構(gòu)的描述與實現(xiàn)方法,熟練掌握典型數(shù)據(jù)結(jié)構(gòu)及其應(yīng)用算法的設(shè)計。了解算法分析方法。
    二、教學(xué)重點與難點--數(shù)據(jù)結(jié)構(gòu)中基本概念和術(shù)語,算法描述和分析方法。
    1、鏈表插入、刪除運算的算法。算法時間復(fù)雜度。
    2、后綴表達式的算法,數(shù)制的換算。
    利用本章的基本知識設(shè)計相關(guān)的應(yīng)用問題。
    3、循環(huán)隊列的特點及判斷溢出的條件。
    利用隊列的特點設(shè)計相關(guān)的應(yīng)用問題。
    4、串的模式匹配運算算法。
    5、二叉樹遍歷算法的設(shè)計。
    利用二叉樹遍歷算法,解決簡單應(yīng)用問題哈夫曼樹的算法。
    6、圖的遍歷。
    最小生成樹。
    最短路徑。
    7、二叉排序樹查找。
    平衡樹二叉樹。
    8、堆排序。
    快速排序歸并排序。
    四、教學(xué)內(nèi)容、目標(biāo)與學(xué)時分配。
    教學(xué)內(nèi)容教學(xué)目標(biāo)課時分配。
    1、緒論。
    邏輯結(jié)構(gòu)與存儲結(jié)構(gòu)。
    算法和算法分析。
    2、線性表。
    線性表的定義與運算。
    線性表的順序存儲。
    線性表的鏈?zhǔn)酱鎯Α?BR>    3、棧。
    棧的定義與運算。
    棧存儲和實現(xiàn)。
    棧的應(yīng)用舉例。
    4、隊列。
    隊列的定義與基本運算。
    隊列的存儲與實現(xiàn)。
    隊列的應(yīng)用舉例。
    5、串。
    串的定義與基本運算。
    串的表示與實現(xiàn)。
    串的基本運算。
    6、樹和二叉樹。
    樹的定義和術(shù)語。
    二叉樹樹的基本概念和術(shù)語遍歷二叉數(shù)和線索二叉樹。
    二叉樹的轉(zhuǎn)換。
    二叉樹的應(yīng)用。
    哈夫曼樹及其應(yīng)用。
    7、圖。
    圖的定義和術(shù)語。
    圖的存儲結(jié)構(gòu)。
    圖的遍歷算法。
    圖的連通性。
    8、查找。
    查找的基本概念與靜態(tài)查找動態(tài)查找。
    哈希表。
    了解。
    了解。
    掌握。
    熟練掌握順序表存儲地址的計算。
    掌握單鏈表的結(jié)構(gòu)特點和基本運算。
    掌握雙鏈表的結(jié)構(gòu)特點和基本運算。
    掌握棧的定義與運算。
    掌握棧的存儲與實現(xiàn)。
    熟練掌握棧的各種實際應(yīng)用。
    掌握隊列的定義與基本運算。
    熟練掌握隊列的存儲與實現(xiàn)。
    掌握循環(huán)隊列的特征和基本運算。
    了解串的邏輯結(jié)構(gòu)。
    掌握串的存儲結(jié)構(gòu)。
    熟練掌握串的基本運算。
    了解。
    了解二叉樹。
    熟練掌握二叉樹定義和存儲結(jié)構(gòu)。
    了解二叉樹的遍歷算法。
    掌握。
    掌握哈夫曼的建立及編碼。
    了解。
    了解。
    熟練掌握。
    熟練掌握。
    了解。
    熟練掌握。
    了解哈希表與哈希方法。
    4學(xué)時。
    1學(xué)時。
    1學(xué)時。
    2學(xué)時。
    8學(xué)時。
    2學(xué)時。
    2學(xué)時。
    4學(xué)時。
    8學(xué)時。
    2學(xué)時。
    2學(xué)時。
    4學(xué)時。
    6學(xué)時。
    2學(xué)時。
    2學(xué)時。
    2學(xué)時。
    6學(xué)時。
    2學(xué)時。
    2學(xué)時。
    2學(xué)時。
    12學(xué)時。
    2學(xué)時。
    2學(xué)時。
    2學(xué)時。
    2學(xué)時。
    2學(xué)時。
    2學(xué)時。
    8學(xué)時。
    2學(xué)時。
    2學(xué)時。
    2學(xué)時。
    2學(xué)時。
    8學(xué)時。
    4學(xué)時。
    2學(xué)時。
    2學(xué)時。
    9、排序。
    12學(xué)時插入排序。
    熟練掌握基本思想。
    3學(xué)時快速排序。
    了解各種內(nèi)部排序方法和特點。
    3學(xué)時選擇排序。
    掌握。
    2學(xué)時各種排序方法比較。
    掌握。
    2學(xué)時。
    實驗內(nèi)容實驗?zāi)繕?biāo)課時分配算法編程實驗:
    1、用指針方式編寫程序復(fù)習(xí)c(c++)語言指針、結(jié)構(gòu)體等的用法。
    2、對單鏈表進行遍歷。
    鏈表的描述與操作實現(xiàn)。
    3、棧及其操作。
    描述方法及操作。
    4、編寫串子系統(tǒng)1串的特點及順序定長存儲、操作、查找。
    5、編寫串子系統(tǒng)2串的特點及順序定長存儲、操作、查找。
    6、編寫樹子系統(tǒng)1二叉樹的特點及存儲方式、創(chuàng)建、顯示、遍歷等。
    7、編寫樹子系統(tǒng)2二叉樹的特點及存儲方式、創(chuàng)建、顯示、遍歷等。
    8、圖子系統(tǒng)。
    圖的鄰接矩陣的存儲、遍歷、廣度/深度優(yōu)先搜索。
    9、查找子系統(tǒng)。
    理解查找基本算法、平均查找長度、靜態(tài)、動態(tài)查找等。
    五、考試范圍與題型。
    1、考試范圍與分數(shù)比例。
    1)緒論。
    12%2)線性表。
    17%3)棧。
    7%4)隊列。
    6%5)串。
    4%6)樹和二叉樹。
    14%7)圖。
    15%8)查找。
    4%9)排序。
    21%。
    2、考試題型與分數(shù)比例。
    1)名詞解釋。
    18%2)判斷對錯。
    16%3)填空。
    16%4)單項選擇。
    18%5)應(yīng)用。
    32%。
    六、教材與參考資料。
    1、教材:實用數(shù)據(jù)結(jié)構(gòu)基礎(chǔ)(譚浩強)中國鐵道出版社。
    2、參考資料:數(shù)據(jù)結(jié)構(gòu)(嚴蔚敏)清華大學(xué)出版社。
    (撰寫人:
    審核人:2學(xué)時2學(xué)時2學(xué)時2學(xué)時2學(xué)時2學(xué)時2學(xué)時2學(xué)時2學(xué)時)。