通過總結(jié),我們可以更好地發(fā)現(xiàn)和分析問題的根源,尋找解決問題的方法和策略。怎樣寫一份完美的總結(jié),是我們需要思考的重要問題之一。這是小編為大家準(zhǔn)備的一些總結(jié)范文,希望能幫到你。
數(shù)據(jù)結(jié)構(gòu)課程感想篇一
本章作為全書的導(dǎo)引,全面介紹了相關(guān)概念,如數(shù)據(jù)、數(shù)據(jù)元素、數(shù)據(jù)類型以及數(shù)據(jù)結(jié)構(gòu)的定義。其中,數(shù)據(jù)結(jié)構(gòu)包括邏輯結(jié)構(gòu)、存儲結(jié)構(gòu)和運算集合。邏輯結(jié)構(gòu)分為四類:集合型、線性、樹形和圖形結(jié)構(gòu);數(shù)據(jù)元素的存儲結(jié)構(gòu)分為:順序存儲、鏈接存儲、索引存儲和散列存儲四類;最后介紹算法的時間性能分析以及算法的空間性能分析。
一、主要介紹順序表的定義,基本算法和時間性能的分析;
二、主要介紹一些簡單的查找算法和排序算法
本章主要介紹的是線性邏輯結(jié)構(gòu)的數(shù)據(jù)在鏈接存儲下的數(shù)據(jù)結(jié)構(gòu)鏈表的相關(guān)知識,本章主要介紹單鏈表、循環(huán)鏈表的數(shù)據(jù)類型的定義及一些對數(shù)據(jù)的操作的算法和時間性能的分析。以及鏈表的應(yīng)用主要有多項式相加,歸并問題、箱子排序問題等方面。
本章介紹了兩種不同的存儲結(jié)構(gòu)下設(shè)計的堆棧,即順序棧和鏈棧;分別對順序棧和鏈棧的數(shù)據(jù)類型定義和對數(shù)據(jù)的操作比若說取棧頂元素和元素入棧等算法。最后介紹了堆棧的應(yīng)用如:漢諾塔和火車車廂重排問題。
樹和森林的概念和性質(zhì)、數(shù)據(jù)結(jié)構(gòu)、樹的基本算法及性能分析,樹與二叉樹之間的轉(zhuǎn)換和森林與二叉樹之間的轉(zhuǎn)換及其相應(yīng)的算法。其次還有樹和森林的遍歷和樹的存儲結(jié)構(gòu),包括雙親表示法,孩子表示法,孩子兄弟表示法。
本章主要介紹圖的定義和基礎(chǔ)知識,圖的四種存儲結(jié)構(gòu),圖的基本算法以及圖的典型應(yīng)用問題如:最小生成樹,最短路徑,拓?fù)渑判蚝完P(guān)鍵路徑等。
1、建議在上課過程中加大隨堂練習(xí)的分量,以便學(xué)生能當(dāng)堂消化課堂上學(xué)習(xí)的知識,也便于及時了解學(xué)生對知識點的掌握情況,同時有助于學(xué)生保持良好的精神狀態(tài)。
2、建議在課時允許的情況下,增加習(xí)題課的分量,通過課堂的習(xí)題講解,加深對知識點的掌握,同時對各知識點的運用有一個更為直觀和具體的認(rèn)識。
數(shù)據(jù)結(jié)構(gòu)課程感想篇二
本次課程設(shè)計所用到的知識完全是上學(xué)期的知識,通過這次課程設(shè)計,我認(rèn)識到了我對數(shù)據(jù)結(jié)構(gòu)這門課的掌握程度。
首先我這個課程設(shè)計是關(guān)于二叉樹的,由于是剛接觸二叉樹,所以我掌握的長度并不深。在編程之前我把有關(guān)于二叉樹的知識有溫習(xí)了一遍,還好并沒有忘掉。二叉樹這章節(jié)難度中上等,而且內(nèi)容廣泛,所以我只掌握了百分之六七十。
然后,在編程中我認(rèn)識到了自己動手能力的不足,雖然相比較大二而言進步很大,但是我還是不滿意,有的在編程中必須看書才能寫出來,有的靠百度,很少是自己寫的。還好,我自己組裝程序的能力還行,要不這東拼西湊的程序根本組裝不了。在編程中我還認(rèn)識到了,編程不能停下,如果編程的時間少了,知識忘的會很快,而且動手也會很慢。同時,同學(xué)之間的合作也很重要,每個人掌握的知識都不一樣,而且掌握程度也不一樣,你不會的別的同學(xué)會,所以在大家的共同努力下,編程會變得很容易。在這次編程中,我了解到了自己某些方面的不足,比如說鏈表的知識,雖然我能做一些有關(guān)于鏈表的編程,但是很慢,沒有別人編程的快,另外,二叉樹和圖的知識最不好掌握,這方面的知識廣泛而復(fù)雜。以前,沒動手編程的時候覺得這些知識很容易,現(xiàn)在編程了才發(fā)現(xiàn)自己錯了,大錯特錯了,我們這個專業(yè)最重視的就是動手編程能力,如果我們紙上寫作能力很強而動手編程能力很差,那我們就白上這個專業(yè)了。計算機這個專業(yè)就是鍛煉動手編程能力的,一個人的理論知識再好,沒有動手編程能力,那他只是一個計算機專業(yè)的“入門者”。在編程中我們能找到滿足,如果我們自己編程了一個程序,我們會感到自豪,而且充實,因為如果我們專研一個難得程序,我們會達到忘我的境界,自己完全沉浸在編程的那種樂趣之中,完全會廢寢忘食。編程雖然會乏味很無聊,但是只要我們沉浸其中,你就會發(fā)現(xiàn)里面的樂趣,遇到難得,你會勇往直前,不寫出來永不罷休;遇到容易的,你會找到樂趣。編程是很乏味,但是那是因為你沒找到編程重的樂趣,你只看到了他的不好,而沒有看到他的好。其實,只要你找到編程中得樂趣,你就會完全喜歡上他,不編程還好,一編程你就會變成一個兩耳不聞窗外事的“植物人”??梢哉f只要你涉及到了計算機,你就的會編程,而且還要喜歡上他,永遠和他打交道,我相信在某一天,我們一定會把他當(dāng)作我們不可或缺的好朋友。
最后我要談的是長時間編程的好處,俗話說“熟能生巧”,確實是這樣。如果我們長時間不編程,在一接觸他,我們會感到很陌生。有規(guī)律的編程會提高我們的動手能力,我們的思維,也會讓我們變得很細(xì)心。在一個幾千行的程序中,我們都能找到錯誤,那我們還會怕其他的錯誤嗎?可以說編程是我們在我們這一行業(yè)的一把利劍,如果我們能很好的利用它,我們就會成為這個行業(yè)的真正成功者。也許你會說就算變成好了也不一定成功,是的,但是你不會編程就一定不會成功。如果,我們想成為這個專業(yè)的成功者,我們就得愛上編程,不管他是怎么得乏味,怎么得無聊,我們都不能丟掉他。
總之,動手編程就是鍛煉我們的動手能力,當(dāng)然這個動手能力并不是科研上的動手能力,而是我們的動手編程能力,記住,只要你真正的喜歡上他,你就會發(fā)現(xiàn)其中的樂趣,我相信,只要你堅持下去,你一定會喜歡上他,把編程當(dā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)練。此外,還有更重要的一點是:機器是比任何教師更嚴(yán)厲的檢查者。因此,在“數(shù)據(jù)結(jié)構(gòu)”的學(xué)習(xí)過程中,必須嚴(yán)格按照老師的要求,主動地、積極地、認(rèn)真地做好每一個實驗,以不斷提高自己的編程能力與專業(yè)素質(zhì)。
通過這段時間的課程設(shè)計,我認(rèn)識到數(shù)據(jù)結(jié)構(gòu)是一門比較難的課程。需要多花時間上機練習(xí)。這次的程序訓(xùn)練培養(yǎng)了我實際分析問題、編程和動手能力,使我掌握了程序設(shè)計的基本技能,提高了我適應(yīng)實際,實踐編程的能力。
總的來說,這次課程設(shè)計讓我獲益匪淺,對數(shù)據(jù)結(jié)構(gòu)也有了進一步的理解和認(rèn)識。
這學(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è)計后,我的心得體會很多,細(xì)細(xì)梳理一下,有以下幾點:
1、程序的編寫中的語法錯誤及修改
因為我在解決二元多項式問題中,使用了鏈表的方式建立的二元多項式,所以程序的空間是動態(tài)的生成的,而且鏈表可以靈活地添加或刪除結(jié)點,所以使得程序得到簡化。但是出現(xiàn)的語法問題主要在于子函數(shù)和變量的定義,降序排序,關(guān)鍵字和函數(shù)名稱的書寫,以及一些庫函數(shù)的規(guī)范使用,這些問題均可以根據(jù)編譯器的警告提示,對應(yīng)的將其解決。
2、程序的設(shè)計中的邏輯問題及其調(diào)整
我在設(shè)計程序的過程中遇到許多問題,首先在選擇數(shù)據(jù)結(jié)構(gòu)的時候選擇了鏈表,但是鏈表的排序比較困難,特別是在多關(guān)鍵字的情況下,在一種關(guān)鍵字確定了順序以后,在第一關(guān)鍵字相同的時候,按某種順序?qū)Φ诙P(guān)鍵字進行排序。在此程序中共涉及到3個量數(shù),即:系數(shù),x的指數(shù)和y的指數(shù),而關(guān)鍵字排是按x的指數(shù)和y的指數(shù)來看,由于要求是降冪排序且含有2個關(guān)鍵字,所以我先選擇x的指數(shù)作為第一關(guān)鍵字,先按x的降序來排序,當(dāng)x的指數(shù)相同時,再以y為關(guān)鍵字,按照y的指數(shù)大小來進行降序排列。
另外,我在加法函數(shù)的編寫過程中也遇到了大量的問題,由于要同時比較多個關(guān)鍵字,而且設(shè)計中涉及了數(shù)組和鏈表的綜合運用,導(dǎo)致反復(fù)修改了很長的時間才完成了一個加法的設(shè)計。但是,現(xiàn)在仍然有一個問題存在:若以0為系數(shù)的項是首項則顯示含有此項,但是運算后則自動消除此項,這樣是正確的。但是當(dāng)其不是首項的時候,加法函數(shù)在顯示的時候有0為系數(shù)的項時,0前邊不顯示符號,當(dāng)然,這樣也可以理解成當(dāng)系數(shù)為0時,忽略這一項。這也是本程序中一個不完美的地方。
我在設(shè)計減法函數(shù)的時候由于考慮不夠充分就直接編寫程序,走了很多彎路,不得不停下來仔細(xì)研究算法,后來發(fā)現(xiàn)由于前邊的加法函數(shù)完全適用于減法,只不過是將二元多項式b的所有項取負(fù)再用加法函數(shù)即可,可見算法的重要性不低于程序本身。
3、程序的調(diào)試中的經(jīng)驗及體會
我在調(diào)試過程中,發(fā)生了許多小細(xì)節(jié)上的問題,它們提醒了自己在以后編程的時候要注意細(xì)節(jié),即使是一個括號的遺漏或者一個字符的誤寫都會造成大量的錯誤,浪費許多時間去尋找并修改,總結(jié)的教訓(xùn)就是寫程序的時候,一定要仔細(xì)、認(rèn)真、專注。
我還有一個很深的體會就是格式和注釋,由于平時不注意格式和注釋這方面的要求,導(dǎo)致有的時候在檢查和調(diào)試的時候很不方便。有的時候甚至剛剛完成一部分的編輯,結(jié)果一不注意,就忘記了這一部分程序的功能。修改的時候也有不小心誤刪的情況出現(xiàn)。如果注意格式風(fēng)格,并且養(yǎng)成隨手加注釋的習(xí)慣,就能減少這些不必要的反復(fù)和波折。還有一點,就是在修改的時候,要注意修改前后的不同點在哪里,改后調(diào)試結(jié)果要在原有的基礎(chǔ)上更加精確。
數(shù)據(jù)結(jié)構(gòu)課程感想篇五
《數(shù)據(jù)結(jié)構(gòu)》是一門實踐性較強的課程,為了學(xué)好這門課程,必須在掌握理論知識的同時,加強上機實踐。
接下來就跟本站小編一起去了解一下關(guān)于數(shù)據(jù)結(jié)構(gòu)課程設(shè)計
心得體會
吧!決問題和在老師的幫助下一步一步慢慢的正確運行程序, 決問題和在老師的幫助下一步一步慢慢的正確運行程序,終 于完成了這次課程設(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)練。此外,還有更重要的一點是:機器是比任何教師更嚴(yán)厲的檢查者。因此,在“數(shù)據(jù)結(jié)構(gòu)”的學(xué)習(xí)過程中,必須嚴(yán)格按照老師的要求,主動地、積極地、認(rèn)真地做好每一個實驗,以不斷提高自己的編程能力與專業(yè)素質(zhì)。
通過這段時間的課程設(shè)計,我認(rèn)識到數(shù)據(jù)結(jié)構(gòu)是一門比較難的課程。需要多花時間上機練習(xí)。這次的程序訓(xùn)練培養(yǎng)了我實際分析問題、編程和動手能力,使我掌握了程序設(shè)計的基本技能,提高了我適應(yīng)實際,實踐編程的能力。
總的來說,這次課程設(shè)計讓我獲益匪淺,對數(shù)據(jù)結(jié)構(gòu)也有了進一步的理解和認(rèn)識。
通過本次課程設(shè)計,對圖的概念有了一個新的認(rèn)識,在學(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)課程感想篇六
1、運動會分?jǐn)?shù)統(tǒng)計
任務(wù):參加運動會有n個學(xué)校,學(xué)校編號為1……n。比賽分成m個男子項目,和w個女子項目。項目編號為男子1……m,女子m+1……m+w。不同的項目取前五名或前三名積分;取前五名的積分分別為:7、5、3、2、1,前三名的積分分別為:5、3、2;哪些取前五名或前三名由學(xué)生自己設(shè)定。(m=10 , w=8 , n=15)功能要求:
3).可以按學(xué)校編號、學(xué)校總分、男女團體總分排序輸出(快速、基數(shù));
4).可按學(xué)校編號查詢學(xué)校某個項目的情況;可按項目編號查詢?nèi)〉们叭蚯拔迕膶W(xué)校。
界面要求:有合理的提示,每個功能可以設(shè)立菜單,根據(jù)提示,可以完成相關(guān)的功能要求。
存儲結(jié)構(gòu):學(xué)生自己根據(jù)系統(tǒng)功能要求自己設(shè)計,但是要求運動會的相關(guān)數(shù)據(jù)要存儲在數(shù)據(jù)文件中。
測試數(shù)據(jù):要求使用
1、全部合法數(shù)據(jù);
2、迷宮求解
3、huffman編碼
4、營業(yè)窗口隊列模擬
任務(wù):實現(xiàn)具有n(n=3)個窗口的現(xiàn)實隊列模擬,統(tǒng)計每人的等待時間。要求:
1).隨機產(chǎn)生顧客的到達時間和服務(wù)時間存盤。2).利用存盤數(shù)據(jù)實現(xiàn)隊列的插入和刪除。2).當(dāng)有顧客離開時,根據(jù)隊列長度調(diào)整隊尾。3).考慮顧客中途離隊的情況。4).考慮顧客具有優(yōu)先級的情況。
5、公交線路提示
任務(wù):建立南京主要公交線路圖。要求:輸入任意兩站點,給出最佳的乘車線路和轉(zhuǎn)車地點。
6、家譜管理系統(tǒng)
任務(wù):實現(xiàn)具有下列功能的家譜管理系統(tǒng) 功能要求:
1).輸入文件以存放最初家譜中各成員的信息,成員的信息中均應(yīng)包含以下內(nèi)容:姓名、出生日期、婚否、地址、健在否、死亡日期(若其已死亡),也可附加其它信息、但不是必需的。
2).實現(xiàn)數(shù)據(jù)的存盤和讀盤。3).以圖形方式顯示家譜。
4).顯示第n 代所有人的信息。
5).按照姓名查詢,輸出成員信息(包括其本人、父親、孩子的信息)。6).按照出生日期查詢成員名單。7).輸入兩人姓名,確定其關(guān)系。8).某成員添加孩子。
9).刪除某成員(若其還有后代,則一并刪除)。10).修改某成員信息。
11).按出生日期對家譜中所有人排序。
12).打開一家譜時,提示當(dāng)天生日的健在成員。
要求:建立至少30個成員的數(shù)據(jù),以較為直觀的方式顯示結(jié)果,并提供文稿形式以便檢查。
界面要求:有合理的提示,每個功能可以設(shè)立菜單,根據(jù)提示,可以完成相關(guān)的功能要求。
1、全部合法數(shù)據(jù);
7、排序算法比較
設(shè)計要求:利用隨機函數(shù)產(chǎn)生10個樣本,每個樣本有50000隨機整數(shù),利用直接插入排序、折半插入排序,表插入排序,希爾排序,起泡排序、快速排序、選擇排序、堆排序,歸并排序,基數(shù)排序十種排序方法進行排序(結(jié)果為由小到大的順序),并統(tǒng)計每一種排序所耗費的平均時間(統(tǒng)計為圖表坐標(biāo)形式)。
8、算術(shù)表達式求值 [問題描述]
一個算術(shù)表達式是由操作數(shù)(operand)、運算符(operator)和界限符(delimiter)組成的。假設(shè)操作數(shù)是正整數(shù),運算符只含加減乘除等四種運算符,界限符有左右括號和表達式起始、結(jié)束符“#”,如:#(7+15)*(23-28/4)#。引入表達式起始、結(jié)束符是為了方便。編程利用“算符優(yōu)先法”求算術(shù)表達式的值。[基本要求](1)從鍵盤讀入一個合法的算術(shù)表達式,輸出正確的結(jié)果。(2)顯示輸入序列和棧的變化過程。
9、電子小字典
基本要求:建立一個微型電子字典,實現(xiàn)生詞的加入,單詞的查找、刪除,修改等操作。
數(shù)據(jù)結(jié)構(gòu):鍵樹
10、校園導(dǎo)游程序
(2)查詢圖中任意兩個景點間的最短路徑。(3)查詢圖中任意兩個景點間的所有路徑。
(4)增加、刪除、更新有關(guān)景點和道路的信息。
11、稀疏矩陣相乘
任務(wù):以三元組形式存儲稀疏矩陣,實現(xiàn)矩陣相乘。
12、平衡二叉樹
任務(wù):平衡二叉樹的建立、結(jié)點的插入和刪除。
13、b-樹
任務(wù):3階b-樹的結(jié)點的插入和刪除。
14、hash表
任務(wù):以班級學(xué)生姓名(拼音)為關(guān)鍵字,建立hash涵數(shù),實現(xiàn)hash表存儲,用鏈地址方法解決沖突。
15、??(自選合適的題目)
成績評定細(xì)則:
1.正確性:程序是否可以運行,結(jié)果是否正確(20分)2.功能的完備性:是否實現(xiàn)要求的所有子功能(20分)
加分項目:
1.健壯性:異常處理的情況
3.功能的完善:除要求實現(xiàn)的功能外,完成了其它的功能,實現(xiàn)了功能的完善 4.界面的設(shè)計:可視化界面,或者交互良好的dos界面 5.……(自薦加分項目)
代碼量要求:=1000行。
代碼總量 = 課設(shè)題目1 代碼量 + 課設(shè)題目2 代碼量…… 若代碼總量低于1000行,則成績按比例打折。
編程語言:c或c++語言
編程環(huán)境:microsoft visual c++ 6.0
時間安排: 上機時間安排 課程設(shè)計報告上交時間 3 課程設(shè)計檢查時間
課程設(shè)計報告要求:
2.給出自己采用的數(shù)據(jù)結(jié)構(gòu); 3.給出算法設(shè)計思想;
4.給出實現(xiàn)的源程序,并在必要的代碼處給出注釋; 5.給出測試數(shù)據(jù)和結(jié)果;
6.給出算法的時間復(fù)雜度、另外可以提出算法的改進方法;
7.給出結(jié)束語:說明完成課程設(shè)計的情況,心得體會;課程設(shè)計報告的電子文檔在上機檢查程序時一并檢查;書面文檔在指定的時間內(nèi)上交。
數(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)了我嚴(yán)肅認(rèn)真的工作作風(fēng),逐步建立正確的生產(chǎn)觀念、經(jīng)濟觀念和全局觀念。
根據(jù)我在實習(xí)中遇到得問題,我將在以后的學(xué)習(xí)過程中注意以下幾點:
1、認(rèn)真上好專業(yè)實驗課,多在實踐中鍛煉自己。2、寫程序的過程中要考慮周到,嚴(yán)密。
3、在做設(shè)計的時候要有信心,有耐心,切勿浮躁。4、認(rèn)真的學(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)課程感想篇八
一、教學(xué)指導(dǎo)思想
(一)構(gòu)建以能力為核心的課程結(jié)構(gòu)體系
會計人才培養(yǎng)必須貼近市場。從會計職業(yè)能力結(jié)構(gòu)分析認(rèn)為精財務(wù)、會核算、懂管理、有特色是今后會計專業(yè)學(xué)生就業(yè)的基本趨勢。財務(wù)會計學(xué)課程又是會計學(xué)和財務(wù)管理學(xué)專業(yè)的核心課程,該課程的教學(xué)質(zhì)量對會計應(yīng)用型人才培養(yǎng)具有舉足輕重的作用。因此,結(jié)合職業(yè)市場對會計人才的需求,按照“知識、能力、素質(zhì)一體化”的指導(dǎo)思想,唐山學(xué)院會計系財務(wù)會計學(xué)課程組重新設(shè)計了本課程的教學(xué)目標(biāo):通過財務(wù)會計學(xué)課程的學(xué)習(xí),一方面使學(xué)生掌握財務(wù)會計理論、技術(shù)與方法,增強職業(yè)核心競爭力;另一方面使學(xué)生將專業(yè)知識的學(xué)習(xí)、自主學(xué)習(xí)與創(chuàng)新能力培養(yǎng)、個性的全面發(fā)展有機統(tǒng)一起來,注重對學(xué)生課程拓展能力的培養(yǎng),使課程的教學(xué)內(nèi)容真正內(nèi)化為學(xué)生的綜合素質(zhì)與能力。
(二)嘗試構(gòu)建全方位教學(xué)過程
要實現(xiàn)知識、能力、素質(zhì)的協(xié)調(diào)發(fā)展和綜合提高的目標(biāo),必須對教學(xué)過程進行全面改革。為此,我們從08級會計學(xué)本科開始設(shè)計實施方法,從09級會計學(xué)本科開始部分嘗試,從橫向上,將財務(wù)會計學(xué)課程教學(xué)過程按教學(xué)環(huán)節(jié)劃分為三大模塊,即課前導(dǎo)學(xué)、課堂教學(xué)、課后答疑。從縱向上,突破傳統(tǒng)課堂教學(xué)教師一言堂教學(xué)模式,實現(xiàn)了基于問題式的合班上課小組(班)討論合作性教學(xué)模式。在每一模塊中確定階段性教學(xué)目標(biāo),通過教學(xué)媒體的混合和教學(xué)方法的混合,實現(xiàn)師生互動、生生互動。
二、改革與建設(shè)實施方法
(一)更新教育教學(xué)觀念
觀念是行為的先導(dǎo),教學(xué)改革要堅持知識、能力和素質(zhì)協(xié)調(diào)發(fā)展,要重視學(xué)生在教學(xué)活動中的主體地位,充分調(diào)動學(xué)生學(xué)習(xí)的積極性、主動性和創(chuàng)造性,為此課程組教師開展教育觀念討論,摒棄傳統(tǒng)的應(yīng)試教育和單純職業(yè)技能培養(yǎng)教育的觀念,樹立素質(zhì)教育和創(chuàng)新教育的觀念,明確教育目的不僅是傳授知識和技能,更重要的是教會學(xué)生獨立自主學(xué)習(xí),提高學(xué)生的綜合素質(zhì),培養(yǎng)學(xué)生的創(chuàng)新意識、創(chuàng)新精神和創(chuàng)新能力,把應(yīng)用性和創(chuàng)新性結(jié)合起來,以應(yīng)對激烈的人才競爭和職業(yè)生涯多變的復(fù)雜環(huán)境。因此,我們將教育觀念的轉(zhuǎn)變作為新一輪教學(xué)改革的起點,并指導(dǎo)教學(xué)改革的方向。
(二)改革課堂教學(xué)手段及教學(xué)組織形式
教學(xué)手段和教學(xué)組織形式是實現(xiàn)教學(xué)目標(biāo)的途徑,課程組教師在教學(xué)過程中全面推行多媒體教學(xué)、網(wǎng)絡(luò)輔助教學(xué),引入案例教學(xué)方法。以學(xué)生熟悉的上市公司為背景資料,通過多種教學(xué)手段的相互配合,使晦澀難懂的財務(wù)會計理論與方法在生動活潑的課堂氛圍中得以掌握,提升學(xué)生課堂學(xué)習(xí)興趣,同時也拉近理論與實踐的距離。為配合唐山學(xué)院提出的應(yīng)用型人才培養(yǎng)模式,本課程率先推行了“合班理論授課、小組合作性學(xué)習(xí)”的新型課堂教學(xué)組織形式,以培養(yǎng)學(xué)生自主學(xué)習(xí)能力與團體協(xié)作能力,全面提升學(xué)生的專業(yè)素質(zhì)和綜合素質(zhì)?!昂习嗬碚撌谡n、小組合作性學(xué)習(xí)研討”的教學(xué)組織形式,即在主講教師的引導(dǎo)性授課的前提下,通過主講教師與輔導(dǎo)教師的指導(dǎo),將大量的基礎(chǔ)學(xué)習(xí)和深入學(xué)習(xí)工作交給學(xué)生在課后完成,促使學(xué)生課下通過閱讀相關(guān)文獻,撰寫學(xué)習(xí)報告、完成案例分析報告等工作,實現(xiàn)財務(wù)會計學(xué)課程創(chuàng)新學(xué)習(xí)的目的。
1.合班理論授課。課堂上進行“五講”教學(xué),即講知識的.背景、講重點、講難點、講熱點、講獲取知識和信息的方法與手段。在教學(xué)內(nèi)容選取上,一方面對傳統(tǒng)的教學(xué)內(nèi)容進行整合,通過貫通、融合和相互滲透,以減少原來教學(xué)內(nèi)容之間的重疊以及羅列現(xiàn)象。這不僅有利于減少教學(xué)時數(shù),提高課程的教學(xué)效率,而且有利于學(xué)生學(xué)會如何尋找事物的內(nèi)在聯(lián)系,掌握課程的精華。另一方面,應(yīng)用新的會計改革成果對某些經(jīng)典內(nèi)容加以創(chuàng)新處理,使之富有新意。在講授方法上,采用“五講教學(xué)法”。即對每一個教學(xué)內(nèi)容的講解,不是面面俱到,而是講重點,講難點,講熱點問題,講獲取知識的方法與手段,講知識產(chǎn)生的背景。
2.小組討論。小組討論實際上是對合班上課所獲取知識的一個總結(jié)運用和必要補充的環(huán)節(jié)。小組討論是將研討內(nèi)容事先布置下去,學(xué)生在課余時間搜集資料,撰寫個人學(xué)習(xí)心得,并以小組為單位組織研討,撰寫發(fā)言報告。最后在小組討論課上進行集中發(fā)言。指導(dǎo)教師對每一組的工作過程及結(jié)果均要進行點評及總結(jié)。通過小組討論,能夠達到對所講教學(xué)內(nèi)容融會貫通的目的,使理論與實踐得以有機結(jié)合。不僅可以調(diào)動學(xué)生的學(xué)習(xí)積極性和創(chuàng)造性,而且有利于學(xué)生對所學(xué)到的知識融會貫通,能夠提高他們的邏輯思維能力、語言表達能力、分析問題與解決問題的能力。
(三)鍛煉學(xué)生理論聯(lián)系實際的能力
1.增加財務(wù)會計案例研討。通過組成研討小組,選擇不同的案例,對案例所涉及的相關(guān)問題進行資料查閱、撰寫讀書筆記、小組討論,記錄過程,進而找出存在的問題、適用的會計準(zhǔn)則,提出自己的分析意見,形成小組分析報告,并進行課堂發(fā)言、回答老師與學(xué)生的提問。通過案例研討,不僅鍛煉學(xué)生的資料收集與文獻閱讀能力,語言表達與溝通能力,而且鍛煉了學(xué)生的管理能力、組織協(xié)調(diào)能力、分析問題和解決問題的能力。
2.建立財務(wù)會計實習(xí)與實驗的長效機制。實踐性教學(xué)是教學(xué)的重要方面,是知識轉(zhuǎn)化為能力和素質(zhì)的重要環(huán)節(jié)。實踐教學(xué)的設(shè)計思想是在堅持教師引導(dǎo)作用的同時,強調(diào)學(xué)生在實踐過程中的認(rèn)知主體作用,在理論指導(dǎo)基礎(chǔ)上,強調(diào)學(xué)生的實踐動手能力,展開認(rèn)識實習(xí),課內(nèi)案例研討,綜合模擬實驗(包括手工和電算化實驗)、畢業(yè)實習(xí),形成了課內(nèi)實踐和課外實踐相結(jié)合、校內(nèi)實踐和校外實踐相結(jié)合、手工實驗與電算化實驗相結(jié)合、仿真模擬與企業(yè)實習(xí)相結(jié)合的實踐教學(xué)模式。這種實踐教學(xué)模式,為學(xué)生把知識轉(zhuǎn)化為能力、能力內(nèi)化為素質(zhì)提供了強有力的保證。
(1)認(rèn)識實習(xí)。在學(xué)習(xí)財務(wù)會計學(xué)課程的前一個學(xué)期期末,利用一周的時間,提前對學(xué)生進行財務(wù)會計課程的動員,并組織學(xué)生去企業(yè)參觀學(xué)習(xí)、聘請企業(yè)界人士為學(xué)生開設(shè)講座,激勵學(xué)生利用假期到企業(yè)、事業(yè)等單位去實地觀摩、見習(xí),增加學(xué)生對財務(wù)會計學(xué)課程內(nèi)容的感性認(rèn)識,在實習(xí)的過程中,完成以下任務(wù):建立導(dǎo)師制。目的是:在學(xué)生以后的理論學(xué)習(xí)過程中,經(jīng)常會遇到晦澀難懂的理論問題,這時學(xué)生可以通過電話或其他聯(lián)系方式向指導(dǎo)教師求助,解決理論聯(lián)系實際脫節(jié)的問題,從而增強學(xué)生對實際問題的認(rèn)識,鍛煉學(xué)生將課堂所學(xué)用于解決實際問題的能力。第二,了解所在見習(xí)單位的會計機構(gòu)、人員構(gòu)成、崗位設(shè)置與流程。第三,見習(xí)結(jié)束后,學(xué)生提交實習(xí)或調(diào)查報告。
(2)集中模擬實習(xí)。第三學(xué)期期末,利用二周時間進行集中模擬實習(xí)。通過此次實習(xí),提高學(xué)生會計基本業(yè)務(wù)的處理能力。這是一種在校內(nèi)實驗室里進行的以一個企業(yè)一周期(一般選擇12月份)的代表性會計資料為基礎(chǔ),通過一整套真實的會計憑證、賬簿、報表及其相應(yīng)的核算工具,模仿企業(yè)財會部門會計實務(wù)處理的仿真演練形式。開設(shè)綜合模擬實驗的主要目的在于檢驗學(xué)生根據(jù)財務(wù)會計學(xué)的基本原理和方法進行會計實務(wù)操作的適應(yīng)能力。因此,在設(shè)計綜合模擬實習(xí)資料時,我們以多元化、集團化經(jīng)營的企業(yè)為藍本,包括工業(yè)企業(yè)、商業(yè)企業(yè)、房地產(chǎn)企業(yè)、外貿(mào)企業(yè)等不同行業(yè)的經(jīng)濟業(yè)務(wù),讓學(xué)生模擬建賬、處理各種會計業(yè)務(wù)、登記各種賬簿、成本核算、對賬、結(jié)賬、利潤分配及年終決算、財務(wù)報告的編制整個財務(wù)核算的全過程,從而使學(xué)生對企業(yè)的整個會計業(yè)務(wù)流程有一個全面、系統(tǒng)的認(rèn)識。
(3)畢業(yè)實習(xí)。這一階段主要是讓學(xué)生通過社會實踐親身參與實務(wù)工作,將財務(wù)會計學(xué)課堂所學(xué)知識運用到實務(wù)中,通過實際操作,增加對實際工作的認(rèn)識,并掌握基本技能,為日后從事實務(wù)工作奠定基礎(chǔ)。通過上述一系列實踐教學(xué),增加了學(xué)生對財務(wù)會計工作的感性認(rèn)識,激發(fā)了學(xué)生學(xué)習(xí)的積極性,鞏固、深化了課堂教學(xué)內(nèi)容,培養(yǎng)了學(xué)生實際操作能力,提高了學(xué)生分析問題、解決問題的能力和創(chuàng)新能力。由于課程實驗和綜合實驗資料均來自于企業(yè)實務(wù)工作,與企業(yè)同步,在校期間受到良好的、嚴(yán)格的、科學(xué)的規(guī)范化訓(xùn)練,所以學(xué)生在畢業(yè)實習(xí)中發(fā)揮出上手快、動手能力強的特色,受到實習(xí)單位的好評,有很多學(xué)生甚至直接簽約實習(xí)單位,這在社會上已經(jīng)形成共識,連續(xù)幾年會計專業(yè)的學(xué)生就業(yè)率均為90%以上。
(四)為學(xué)生營造探究性學(xué)習(xí)的空間,鼓勵學(xué)生進行科研活動
為鼓勵學(xué)生對感興趣的問題進一步研究,讓學(xué)生與導(dǎo)師聯(lián)系參與到自己感興趣的課題當(dāng)中。學(xué)生通過導(dǎo)師科學(xué)研究的熏陶,使學(xué)生逐漸地接觸前沿理論,同時關(guān)注會計實務(wù)的運作情況,查閱參考資料,通過這些過程將自己的所思所想,形成文字,持之以恒,不僅增加了知識,更重要的是促進學(xué)生的科研興趣和科研能力,培養(yǎng)他們的創(chuàng)新能力和應(yīng)用能力。
(五)改進考核方法,注重過程考核和應(yīng)用能力考評
學(xué)習(xí)成績的評價與考核對學(xué)生學(xué)習(xí)有很強的導(dǎo)向作用。為了實現(xiàn)由應(yīng)試教育向素質(zhì)教育和創(chuàng)新教育轉(zhuǎn)變,我們對原有的考試制度進行了改革。一是在考核方式上,將形成性考核與終結(jié)性考核相結(jié)合,平時成績與期終考試成績分別占60%和40%。二是在考核內(nèi)容上,減少知識性試題的份量,增加案例分析等能力性試題的份量,側(cè)重于考核學(xué)生的知識運用能力、分析與解決問題的能力,防止和杜絕了平時不認(rèn)真學(xué)習(xí),到期末靠死記硬背應(yīng)付考試的現(xiàn)象,使學(xué)生對所學(xué)的課程內(nèi)容真正做到“弄懂、學(xué)活、會用”。
三、結(jié)語
參考資料:
[1]蔣衛(wèi)東.導(dǎo)向式教學(xué)法在高級財務(wù)會計教學(xué)中的應(yīng)用[j].財會月刊,2005,(30).
[2]張海水.我國會計專業(yè)人才培養(yǎng)現(xiàn)狀、存在問題及未來發(fā)展的思考[j].商業(yè)會計,2014,(01).
[3]李慧思.財務(wù)會計教學(xué)中存在的問題及其改進[j].商業(yè)會計,2014,(03).
數(shù)據(jù)結(jié)構(gòu)課程感想篇九
1、數(shù)據(jù)結(jié)構(gòu)和算法
本章作為全書的導(dǎo)引,全面介紹了相關(guān)概念,如數(shù)據(jù)、數(shù)據(jù)元素、數(shù)據(jù)類型以及數(shù)據(jù)結(jié)構(gòu)的定義。其中,數(shù)據(jù)結(jié)構(gòu)包括邏輯結(jié)構(gòu)、存儲結(jié)構(gòu)和運算集合。邏輯結(jié)構(gòu)分為四類:集合型、線性、樹形和圖形結(jié)構(gòu);數(shù)據(jù)元素的存儲結(jié)構(gòu)分為:順序存儲、鏈接存儲、索引存儲和散列存儲四類;最后介紹算法的時間性能分析以及算法的空間性能分析。
2、順序表及其應(yīng)用
一、主要介紹順序表的定義,基本算法和時間性能的分析;
二、主要介紹一些簡單的查找算法和排序算法
3、鏈表及其應(yīng)用
本章主要介紹的是線性邏輯結(jié)構(gòu)的數(shù)據(jù)在鏈接存儲下的數(shù)據(jù)結(jié)構(gòu)鏈表的相關(guān)知識,本章主要介紹單鏈表、循環(huán)鏈表的數(shù)據(jù)類型的定義及一些對數(shù)據(jù)的操作的算法和時間性能的分析。以及鏈表的應(yīng)用主要有多項式相加,歸并問題、箱子排序問題等方面。
4、堆棧及其應(yīng)用
本章介紹了兩種不同的存儲結(jié)構(gòu)下設(shè)計的堆棧,即順序棧和鏈棧;分別對順序棧和鏈棧的數(shù)據(jù)類型定義和對數(shù)據(jù)的操作比若說取棧頂元素和元素入棧等算法。最后介紹了堆棧的應(yīng)用如:漢諾塔和火車車廂重排問題。
5、隊列及其應(yīng)用
6、特殊矩陣、廣義表及其應(yīng)用
7、二叉樹及其應(yīng)用
8、樹和森林及其應(yīng)用
樹和森林的概念和性質(zhì)、數(shù)據(jù)結(jié)構(gòu)、樹的基本算法及性能分析,樹與二叉樹之間的轉(zhuǎn)換和森林與二叉樹之間的轉(zhuǎn)換及其相應(yīng)的算法。其次還有樹和森林的遍歷和樹的存儲結(jié)構(gòu),包括雙親表示法,孩子表示法,孩子兄弟表示法。
9、散列結(jié)構(gòu)及其應(yīng)用
本章主要介紹圖的定義和基礎(chǔ)知識,圖的四種存儲結(jié)構(gòu),圖的基本算法以及圖的典型應(yīng)用問題如:最小生成樹,最短路徑,拓?fù)渑判蚝完P(guān)鍵路徑等。
二、學(xué)習(xí)體會
1、建議在上課過程中加大隨堂練習(xí)的分量,以便學(xué)生能當(dāng)堂消化課堂上學(xué)習(xí)的知識,也便于及時了解學(xué)生對知識點的掌握情況,同時有助于學(xué)生保持良好的精神狀態(tài)。
2、建議在課時允許的情況下,增加習(xí)題課的分量,通過課堂的習(xí)題講解,加深對知識點的掌握,同時對各知識點的運用有一個更為直觀和具體的認(rèn)識。
數(shù)據(jù)結(jié)構(gòu)課程感想篇十
數(shù)據(jù)結(jié)構(gòu)與算法(data structures)
計算機技術(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、緒論
數(shù)據(jù)結(jié)構(gòu)的內(nèi)容
邏輯結(jié)構(gòu)與存儲結(jié)構(gòu)
算法和算法分析
2、線性表
線性表的定義與運算
線性表的順序存儲
線性表的鏈?zhǔn)酱鎯?/p>
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、考試范圍與分?jǐn)?shù)比例
1)緒論
12% 2)線性表
17% 3)棧
7% 4)隊列
6% 5)串
4% 6)樹和二叉樹
14% 7)圖
15% 8)查找
4% 9)排序
21%
2、考試題型與分?jǐn)?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)(嚴(yán)蔚敏)清華大學(xué)出版社
數(shù)據(jù)結(jié)構(gòu)實用教程(徐孝凱)清華大學(xué)出版社
(撰寫人:
,審核人: 2學(xué)時 2學(xué)時 2學(xué)時 2學(xué)時 2學(xué)時 2學(xué)時 2學(xué)時 2學(xué)時 2學(xué)時)
數(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)過程中,我們深刻的認(rèn)識到了自己在學(xué)習(xí)方面的不足之處,我知道我還有太多的基本的思想沒有真正的理解,當(dāng)然我們不會灰心,我們會在以后的日子里努力彌補我們的不足。
在兩周的實訓(xùn)中,我們也體會到了團隊合作的重要性,從最初的查閱資料到最后的程序的成功運行,我們組有過山窮水盡的困惑;有過柳暗花明的驚喜;有過唇槍舌劍的辯論;有過相互鼓勵的安慰。兩個禮拜的時間我們經(jīng)歷了很多,也收獲了很多。與其說這次的實訓(xùn)是體力與腦力的作業(yè),不如說它是合作精神和毅力的考驗。經(jīng)過這次課程設(shè)計,我們不僅學(xué)到了很多知識和技能,更重要的是我們學(xué)會了如何運用所學(xué)知識去解決實際問題。
總之,兩個禮拜的課程設(shè)計讓我們受益匪淺。我們深深認(rèn)識到,要學(xué)好一門學(xué)科,沒有刻苦鉆研的精神是不行的,只有在不斷的嘗試中,經(jīng)歷失敗,從失敗中經(jīng)驗,然后再不斷的嘗試,才能獲得成功。
數(shù)據(jù)結(jié)構(gòu)課程感想篇十二
通過本次課程設(shè)計,對圖的概念有了一個新的認(rèn)識,在學(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)了我嚴(yán)肅認(rèn)真的工作作風(fēng),逐步建立正確的生產(chǎn)觀念、經(jīng)濟觀念和全局觀念。
根據(jù)我在實習(xí)中遇到得問題,我將在以后的學(xué)習(xí)過程中注意以下幾點:
1、認(rèn)真上好專業(yè)實驗課,多在實踐中鍛煉自己。
2、寫程序的過程中要考慮周到,嚴(yán)密。
3、在做設(shè)計的時候要有信心,有耐心,切勿浮躁。
4、認(rèn)真的學(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),撞了幾次壁之后,我決定靜下心來,仔細(xì)去寫程序。老師會給我們需要編程的內(nèi)容一些講解,順著老師的思路,來完成自己的設(shè)計,我們可以開始運行自己的程序,可是好多處的錯誤讓人看的可怕,還看不出到底是哪里出現(xiàn)了錯誤,但是程序還是得繼續(xù)下去,我多次請教了老師和同學(xué),逐漸能自己找出錯誤,并加以改正。
tc里檢查錯誤都是用英文來顯示出來的,經(jīng)過了這次課程設(shè)計,現(xiàn)在已經(jīng)可以了解很多錯誤在英文里的提示,這對我來說是一個突破性的進步,眼看著一個個錯誤通過自己的努力在我眼前消失,覺得很是開心。此次的程序設(shè)計能夠成功,是我和我的同學(xué)三個人共同努力作用的結(jié)果。在這一段努力學(xué)習(xí)的過程中,我們的編程設(shè)計有了明顯的提高。
其實現(xiàn)在想起來,收獲還真是不少,雖然說以前非常不懂這門語言,在它上面花費了好多心血,覺得它很難,是需用花費了大量的時間編寫出來的。現(xiàn)在真正的明白了一些代碼的應(yīng)用,每個程序都有一些共同點,通用的結(jié)構(gòu),相似的格式。只要努力去學(xué)習(xí),就會靈活的去應(yīng)用它。
數(shù)據(jù)結(jié)構(gòu)課程感想篇十三
1004012033 陳孝婕 10計本3 “數(shù)據(jù)結(jié)構(gòu)與算法”這門課程對于計算機科學(xué)與技術(shù)系的學(xué)生來說是非常重要的課程。這門課程主要包括十個章節(jié)。
一.每章主要知識點總結(jié)和個人掌握情況
第一章主要要求學(xué)生掌握數(shù)據(jù)、數(shù)據(jù)類型、數(shù)據(jù)結(jié)構(gòu)、算法及算法分析等基本概念和基礎(chǔ)知識。另外,第一章結(jié)合課程學(xué)習(xí)要求,復(fù)習(xí)和掌握算法描述工具--c語言中的指針類型與指針變量、結(jié)構(gòu)類型與結(jié)構(gòu)變量、函數(shù)與參數(shù)、遞歸定義和遞歸函數(shù)、動態(tài)存儲分配、文件操作、程序測試和測試集、測試數(shù)據(jù)的設(shè)計和程序調(diào)試等問題。
從這一章中我不僅學(xué)到了數(shù)據(jù)結(jié)構(gòu)的基本概念和基礎(chǔ)知識,了解到什么是數(shù)據(jù)結(jié)構(gòu),我們?yōu)槭裁匆獙W(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)這門課程。而且復(fù)習(xí)了大一下學(xué)期所學(xué)的c語言程序課程設(shè)計中的算基本法語句。有利于數(shù)據(jù)結(jié)構(gòu)與算法后面課程的學(xué)習(xí)。
第二章主要學(xué)習(xí)順序表(包括順序串)數(shù)據(jù)類型、數(shù)據(jù)結(jié)構(gòu)、基本算法及相關(guān)應(yīng)用。知識點包括順序表的概念、數(shù)據(jù)結(jié)構(gòu)定義、數(shù)據(jù)類型描述、基本算法的實現(xiàn)及其性能的分析等知識;還有“查找”和“排序”的概念,“查找”包括3種查找方式:簡單順序查找、二分查找、分塊查找;“排序”包括直接插入排序、希爾排序、冒泡排序、快速排序、直接選擇排序和歸并排序(重點為二路歸并排序)6種排序方式;掌握應(yīng)用順序表來進行查找和排序的各類算法以及不同的查找和排序算法間的性能差異。在此基礎(chǔ)上,理解順序串的相關(guān)應(yīng)用。
從這一章中我學(xué)習(xí)到各種不同的查找方法和排序方式,其中二分查找作為重點查找方法我進行了重點學(xué)習(xí),熟悉并熟練地運用二分查找并且了解到各種排序方法適合于不同的順序表。對于順序串的學(xué)習(xí),我主要掌握了字符串的基本運算,包括:求串長strlen(s)、連接stract(st1,st2)、求子串substr(s,i,j)、比較串的大小strcmp(s,t)、插入insert(s1,i,s2)、刪除delete(s,i,j)、子串定位index(s1,s2)、置換(replace(s1,i,j,s2)、replace(s,t,v)兩種)。
第三章主要學(xué)習(xí)鏈表(單聊表、循環(huán)鏈表)的概念、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)類型描述、基本算法以及鏈表相關(guān)應(yīng)用。需要掌握各種鏈表的概念、數(shù)據(jù)結(jié)構(gòu)定義、基本算法實現(xiàn)以及算法的性能分析等知識,掌握鏈表的相關(guān)應(yīng)用方法,在此基礎(chǔ)上掌握鏈串的相關(guān)知識。
通過這一章我學(xué)習(xí)了另一種數(shù)據(jù)結(jié)構(gòu)——鏈表,在邏輯結(jié)構(gòu)上,鏈表與順序表一樣,也是線性邏輯結(jié)構(gòu);單鏈表借助“地址”的概念,使用了鏈?zhǔn)酱鎯Y(jié)構(gòu),產(chǎn)生了一種新的數(shù)據(jù)結(jié)構(gòu)——鏈表,鏈表的基本操作是地址運算,在此基礎(chǔ)上構(gòu)成的鏈表基本算法的特點也就不同,從鏈表算法的功能看,鏈表的基本運算與順序表基本相同,但實現(xiàn)方法和過程與順序表是不同的,鏈表可分為靜態(tài)鏈表和動態(tài)鏈表兩種。這一章我學(xué)習(xí)到的實際應(yīng)用是鏈表的創(chuàng)建、插入和刪除等基本操作。循環(huán)鏈表的建立和查詢方法。
第四章主要知識點是在兩種不同的存儲結(jié)構(gòu)下設(shè)計的堆棧,即順序棧和鏈棧。主要內(nèi)容是順序棧和鏈棧的概念、數(shù)據(jù)類型、數(shù)據(jù)結(jié)構(gòu)定義和基本運算算法及其性能分析。通過對本章的學(xué)習(xí),要求掌握順序棧及鏈棧的數(shù)據(jù)類型描述、數(shù)據(jù)結(jié)構(gòu)、基本算法及其性能分析等知識。在此基礎(chǔ)上,了解堆棧的相關(guān)應(yīng)用,掌握應(yīng)用堆棧解決實際問題的思想及方法。
通過對這一章的學(xué)習(xí),我了解了堆棧的概念,堆棧的原理、創(chuàng)建方法以及使用方式?!昂筮M先出”是其基本原則。利用堆??梢暂p松方便的解決對稱問題以及括號匹配等問題。堆棧與順序表、鏈表不同的是,堆棧只能對一端的數(shù)據(jù)元素進行操作,即只在棧頂進行元素的插入和刪除。掌握順序棧和鏈表的存儲結(jié)構(gòu)是學(xué)習(xí)堆棧的要素之一。堆棧是一類常用的數(shù)據(jù)結(jié)構(gòu),被廣泛應(yīng)用于各種程序設(shè)計中。
第五章的重點知識是在順序存儲和鏈接存儲下的兩種隊列——順序(循環(huán))隊列和鏈隊
列的數(shù)據(jù)結(jié)構(gòu)、基本運算及其性能分析以及應(yīng)用。通過本章的學(xué)習(xí),要求掌握順序隊列(重點是循環(huán)隊列)及鏈隊列的概念、數(shù)據(jù)類型描述、數(shù)據(jù)結(jié)構(gòu)、基本算法及其性能分析等知識。在此基礎(chǔ)上,了解隊列的相關(guān)應(yīng)用,掌握應(yīng)用隊列來解決實際問題的思想及方法。
通過這一章的學(xué)習(xí),我掌握了隊列的定義,概念,創(chuàng)建以及“對頭刪除”,“隊尾插入”的原則。重點了解了判斷循環(huán)隊列空和滿的判斷條件。同堆棧一樣,隊列也是一種具有線性邏輯結(jié)構(gòu)、運算受限制的數(shù)據(jù)結(jié)構(gòu)。與堆棧只在一端(棧頂)進行元素的插入和刪除運算不同的是,隊列是在對頭進行插入,而在隊尾完成數(shù)據(jù)元素的刪除,所以隊列的算法和適用的應(yīng)用問題與堆棧有很大的區(qū)別。隊列作為一類常用的數(shù)據(jù)結(jié)構(gòu),被廣泛應(yīng)用于各種程序設(shè)計中。
第六章主要學(xué)習(xí)數(shù)組、系數(shù)矩陣和廣義表的基本概念、集中特殊矩陣的存儲結(jié)構(gòu)及基本運算,在此基礎(chǔ)上學(xué)習(xí)特殊矩陣的計算算法與廣義表應(yīng)用等相關(guān)問題。通過本章的學(xué)習(xí),要求掌握特殊矩陣的壓縮存儲結(jié)構(gòu),在該存儲結(jié)構(gòu)下元素的定位方法,理解稀疏矩陣的計算和廣義表的存儲結(jié)構(gòu)及其基本運算。了解矩陣與廣義表的相關(guān)應(yīng)用。
通過這章的學(xué)習(xí)和前幾章的比較,我了解到前幾章的線性結(jié)構(gòu)中的數(shù)據(jù)元素都是非結(jié)構(gòu)的原子類型,即每一個元素都是不可再分解的。本章討論的數(shù)組和廣義表等數(shù)據(jù)結(jié)構(gòu)可以看成是在前幾章線性結(jié)構(gòu)基礎(chǔ)上的一個擴展:組成該數(shù)據(jù)結(jié)構(gòu)的數(shù)據(jù)元素本身也是一個數(shù)據(jù)結(jié)構(gòu)。矩陣計算應(yīng)該數(shù)值計算方面的問題,由于矩陣和數(shù)組的關(guān)系以及特殊矩陣存儲結(jié)構(gòu)的復(fù)雜性,進而使得特殊矩陣的存儲結(jié)構(gòu)和算法也表現(xiàn)出其特殊性,所以數(shù)據(jù)機構(gòu)課程應(yīng)該解決其計算問題。
第七章的學(xué)習(xí)重點是二叉樹的概念、數(shù)據(jù)類型、數(shù)據(jù)結(jié)構(gòu)定義和各種基本算法,在此基礎(chǔ)上介紹二叉樹的一些應(yīng)用問題。通過本章的學(xué)習(xí),我掌握了二叉樹概念及其性質(zhì)、二叉樹的邏輯結(jié)構(gòu)和存儲結(jié)構(gòu)等知識,掌握二叉樹的建立、遍歷、線索化等基本概念和算法及性能分析,能熟練應(yīng)用二叉樹這章結(jié)構(gòu)來解決一些實際問題,如哈夫曼樹及哈夫曼編碼、查找與排序(二叉樹排序)等問題。了解堆棧排序及其算法等知識。二叉樹是非線性數(shù)據(jù)結(jié)構(gòu),是樹形結(jié)構(gòu)的一種特殊形式。在現(xiàn)實生活有許多數(shù)據(jù)關(guān)系可抽象為樹或二叉樹的形式。本章中的二叉樹的概念及其性質(zhì)、二叉排序樹、存儲結(jié)構(gòu)、遍線索(化)、基本算法為重點內(nèi)容,二叉排序樹的應(yīng)用為難點內(nèi)容。
第八章的學(xué)習(xí)重點是樹和森林的數(shù)據(jù)結(jié)構(gòu)、基本算法及其性能分析,樹和森林與二叉樹間的轉(zhuǎn)化算法等,在此基礎(chǔ)上介紹樹的應(yīng)用——b-樹。通過本章的學(xué)習(xí),我掌握了樹和森林的概念和性質(zhì)、數(shù)據(jù)結(jié)構(gòu)、樹的基本算法及性能分析、樹與二叉樹間的轉(zhuǎn)換及其算法,并能應(yīng)用b-樹來實現(xiàn)數(shù)據(jù)元素的動態(tài)查找。舒適一種非線性結(jié)構(gòu),它在二叉樹的基礎(chǔ)上做了更為一般化的擴展,而森林是樹的集合。在樹結(jié)構(gòu)中,每一個元素最多只有一個前驅(qū),但可能有多個后繼?,F(xiàn)實生活中的家族關(guān)系、單位的組成結(jié)構(gòu)等,均可抽象為樹的形式。
第九章學(xué)習(xí)重點是散列結(jié)構(gòu)的相關(guān)知識,學(xué)習(xí)常用的散列函數(shù)和沖突處理方法,散列表的常用算法及其性能分析,通過本章的學(xué)習(xí),我掌握了散列結(jié)構(gòu)和散列函數(shù)的相關(guān)概念,掌握散列結(jié)構(gòu)的存儲(散列表)的相關(guān)概念,要求掌握散列沖突處理方法(散列法)的相關(guān)知識,并能靈活運用散列法解決應(yīng)用問題。
散列結(jié)構(gòu)是使用散列函數(shù)建立數(shù)據(jù)結(jié)點關(guān)鍵字與存儲地址之間的對應(yīng)關(guān)系并提供多種當(dāng)數(shù)據(jù)節(jié)點存儲地址發(fā)生“沖突”時的處理方法而建立的一種數(shù)據(jù)結(jié)構(gòu)。散列結(jié)構(gòu)的查找等運算效率是很高的,本章中的散列函數(shù)、散列結(jié)構(gòu)、散列表、散列法的基本概念和基本算法是重點,線性探測散列算法、鏈地址法散列算法和散列法的應(yīng)用是難點。
第十章的學(xué)習(xí)重點是圖的定義及性質(zhì),圖的四種存儲結(jié)構(gòu),圖的兩種遍歷算法以及圖的典型應(yīng)用,包括最小生成樹、最短路徑、拓?fù)渑判蚝完P(guān)鍵路徑等。通過本章學(xué)習(xí),我掌握了圖的概念和基本性質(zhì),圖的存儲結(jié)構(gòu)(鄰接矩陣和鄰接表)及其基本算法、圖的遍歷及算法、圖的最小生成樹普利姆算法或者克魯斯卡爾算法、圖的最短路徑迪杰斯特拉算法和弗洛伊德算法、有向無環(huán)圖拓?fù)渑判蛩惴āA私饬藞D的逆鄰接表、十字鏈表、鄰接多重表存儲結(jié)構(gòu)及其基本算法、關(guān)鍵路徑求解算法,并能靈活運用圖的不同的數(shù)據(jù)結(jié)構(gòu)和遍歷算法解決復(fù)雜的應(yīng)用問題。
二.課程學(xué)習(xí)體會
在學(xué)習(xí)開始的時候,老師就明確提出它不是一種計算機語言,不會介紹c語言的變成語言,而是通過學(xué)習(xí)可以設(shè)計出良好的算法,高效地組織數(shù)據(jù)。一個程序無論采用何種語言,其基本算法思想不會改變。聯(lián)系到在大一和大二上學(xué)期學(xué)習(xí)的c和c++語言,我深刻認(rèn)識到了這一點?!败浖_發(fā)好比寫作文,計算機語言提供了許多華麗的辭藻,而數(shù)據(jù)結(jié)構(gòu)則考慮如何將這些辭藻組織成一篇優(yōu)秀的文章來。”在學(xué)習(xí)這門課中,要熟悉對算法思想的一些描述手段,包括文字描述、圖形描述和計算機語言描述等。因此,計算機語言基礎(chǔ)是必須的,因為它提供了一種重要的算法思想描述手段——機器可識別的描述。
這門課結(jié)束之后,我總結(jié)了學(xué)習(xí)中遇到的一些問題,最為突出的,書本上的知識與老師的講解都比較容易理解,但是當(dāng)自己采用剛學(xué)的知識點編寫程序時卻感到十分棘手,有時表現(xiàn)在想不到適合題意的算法,有時表現(xiàn)在算法想出來后,只能將書本上原有的程序段謄寫到自己的程序中再加以必要的連接以完成程序的編寫。針對這一情況,我會嚴(yán)格要求自己,熟練掌握算法思想,盡量獨立完成程序的編寫與修改工作,只有這樣,才能夠提高運用知識,解決問題的能力。
三.對《數(shù)據(jù)結(jié)構(gòu)與算法》課程教學(xué)的建議
1、建議在上課過程中加大隨堂練習(xí)的分量,以便學(xué)生能當(dāng)堂消化課堂上學(xué)習(xí)的知識,也便于及時了解學(xué)生對知識點的掌握情況,同時有助于學(xué)生上課積極思考,不會開小差。
2、建議在課時允許的情況下,增加習(xí)題課的分量,通過課堂的習(xí)題講解,加深對知識點的掌握,同時對各知識點的運用有一個更為直觀和具體的認(rèn)識。
以上便是我對《數(shù)據(jù)結(jié)構(gòu)與算法》這門課的學(xué)習(xí)總結(jié),我會抓緊時間將沒有吃透的知識點補齊。今后我仍然會繼續(xù)學(xué)習(xí),克服學(xué)習(xí)中遇到的難關(guān),在打牢基礎(chǔ)的前提下向更深入的層面邁進!
數(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)練。此外,還有更重要的一點是:機器是比任何教師更嚴(yán)厲的檢查者。因此,在“數(shù)據(jù)結(jié)構(gòu)”的學(xué)習(xí)過程中,必須嚴(yán)格按照老師的要求,主動地、積極地、認(rèn)真地做好每一個實驗,以不斷提高自己的編程能力與專業(yè)素質(zhì)。
通過這段時間的課程設(shè)計,我認(rèn)識到數(shù)據(jù)結(jié)構(gòu)是一門比較難的課程。需要多花時間上機練習(xí)。這次的程序訓(xùn)練培養(yǎng)了我實際分析問題、編程和動手能力,使我掌握了程序設(shè)計的基本技能,提高了我適應(yīng)實際,實踐編程的能力。
總的來說,這次課程設(shè)計讓我獲益匪淺,對數(shù)據(jù)結(jié)構(gòu)也有了進一步的理解和認(rèn)
【本文地址:http://www.aiweibaby.com/zuowen/5560681.html】