議論文是對一個觀點進行辯證和論證的一種寫作形式,通過寫議論文可以提高自己的思辨和說服能力。成功不是偶然,而是需要堅持不懈的努力。接下來,讓我們一起來看看下面這些總結(jié)范文,或許能為你提供一些靈感。
數(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è)計終于做完了,在這次程序設(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í)也不可能一下子寫出一個程序出來,于是我就認(rèn)真看老師寫的程序,發(fā)現(xiàn)我們看懂了一個程序其實不難,難的是對于一個程序的思想的理解,我們要掌握一個算法,不僅僅限于讀懂,主要的是要理解老師的思路,學(xué)習(xí)老師的解決問題的'方法。這次試驗中,我發(fā)現(xiàn)書本上的知識是一個基礎(chǔ),但是我基礎(chǔ)都沒掌握,更別說寫出一個整整的程序了。自己在寫程序的時候,也發(fā)現(xiàn)自己的知識太少了,特別是基礎(chǔ)知識很多都是模模糊糊的一個概念,沒有落實到真正的程序,所以自己寫的時候也感到萬分痛苦,基本上涉及一個知識我就會去看看書,對于書本上的知識沒掌握好。在飯后閑暇時間我也總結(jié)了一下,自己以前上課也認(rèn)真的聽了,但是還是寫不出來,這主要歸結(jié)于自己的練習(xí)太少了,而且也總是半懂就不管了。在改寫老師的程序中也出現(xiàn)了很多的問題,不斷的修改就是不斷的學(xué)習(xí)過程,當(dāng)我們?nèi)硇牡耐度肫渲袝r,實際上是一件很有樂趣的事情。對于以后的學(xué)習(xí)有了幾點總結(jié):
第二、各種常用的排序算法,如冒泡排序、堆排序……,這些
是必考的內(nèi)容,分?jǐn)?shù)不會少于20%;
數(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只要你涉及到了計算機,你就的會編程,而且還要喜歡上他,永遠(yuǎn)和他打交道,我相信在某一天,我們一定會把他當(dāng)作我們不可或缺的好朋友。
最后我要談的是長時間編程的好處,俗話說“熟能生巧”,確實是這樣。如果我們長時間不編程,在一接觸他,我們會感到很陌生。有規(guī)律的編程會提高我們的動手能力,我們的思維,也會讓我們變得很細(xì)心。在一個幾千行的程序中,我們都能找到錯誤,那我們還會怕其他的錯誤嗎?可以說編程是我們在我們這一行業(yè)的一把利劍,如果我們能很好的利用它,我們就會成為這個行業(yè)的真正成功者。也許你會說就算變成好了也不一定成功,是的,但是你不會編程就一定不會成功。如果,我們想成為這個專業(yè)的成功者,我們就得愛上編程,不管他是怎么得乏味,怎么得無聊,我們都不能丟掉他。
總之,動手編程就是鍛煉我們的動手能力,當(dāng)然這個動手能力并不是科研上的動手能力,而是我們的動手編程能力,記住,只要你真正的喜歡上他,你就會發(fā)現(xiàn)其中的樂趣,我相信,只要你堅持下去,你一定會喜歡上他,把編程當(dā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)了我嚴(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é)期的老師們想必都在好好享受著假期,無論是選擇休閑娛樂,還是繼續(xù)充電,或者是為下一學(xué)期的教育教學(xué)工作做準(zhǔn)備。作為老師,我是幸運的!假期我有了一個這樣的外出學(xué)習(xí)的機會。那么在這里我想說謝謝小教部給我們林區(qū)教師提供一個這樣的學(xué)習(xí)機會,希望這項活動能永保青春,讓每位林區(qū)的教師都能受益。下面我就我個人學(xué)習(xí)談一點心得體會:
隨著教育改革的不斷深入,傳統(tǒng)教學(xué)的改革已勢在必行。變“要我學(xué)”為“我要學(xué)”就要求教師要給學(xué)生充分的時間和空間,給學(xué)生提供豐富的學(xué)習(xí)資料,讓他們通過討論、交流等多種形式的學(xué)習(xí),使學(xué)生自主學(xué)習(xí)可以自學(xué)的內(nèi)容。
此次學(xué)習(xí)我聆聽了十位教育專家的講座,分別從師德修養(yǎng)、教育敘事研究、小學(xué)語文閱讀法、新課程下的教學(xué)反思、教學(xué)研究導(dǎo)論、數(shù)學(xué)課題教學(xué)的實效性、語文教學(xué)中的朗讀指導(dǎo)、數(shù)學(xué)課堂教學(xué)評價指南、有效教學(xué)促進學(xué)生思考、信息時代下教師專業(yè)發(fā)展這十個方面對我們進行了培訓(xùn)。
一、提升師德修養(yǎng)
師生關(guān)系的新注解,對話與理解、愛與平等。課程實際上對教師提出了教育專業(yè)工作者的要求,教師在教學(xué)活動中所遇到的“老”問題必須以新的理念為指導(dǎo),師生關(guān)系的正確處理是教學(xué)工作的一個關(guān)鍵問題。新課程要求師生關(guān)系從對抗走向?qū)υ?,從壓迫走向平等,教師角色從傳統(tǒng)的課堂主宰轉(zhuǎn)變?yōu)榻虒W(xué)的促進者,學(xué)生成長的引路人,學(xué)生潛能的喚醒者。只有在新型師生關(guān)系下,學(xué)生的素質(zhì)、教師的智能、新課程的優(yōu)勢才可得到充分的發(fā)揮。
創(chuàng)新是事物發(fā)的動力和源泉,只有不斷創(chuàng)新,一個國家才能不斷走向前進,一個人才能不斷得到完善和提高。沒有創(chuàng)新意識,最后的結(jié)果必然導(dǎo)致自身價值的實現(xiàn)將被社會進步與發(fā)展的洪流所淹沒,我們不能總是站在先人創(chuàng)造的歷史山峰上沾沾自喜。在知識爆炸,科技迅猛發(fā)展的今天,要求我們要能夠根據(jù)新形式新任務(wù)的需要,積極推動各項工作的與時俱進,克報不思進取,墨守成規(guī)的觀念和行為,努力發(fā)掘解決問題的好方式、好方法。當(dāng)然創(chuàng)新也不是盲目和隨意的,創(chuàng)新也需要以牢固扎實的理論知識和長期的工作實踐作為前提和保障,以此為基礎(chǔ)進而尋求更為高效、合理、多樣的方法來改進我們的工作,提高工作成效,才能進一步實現(xiàn)好、維護好、發(fā)展好人民的根本利益。“捧著一顆心來,不帶半根草去?!碧招兄舷壬眠@句話來高度概括了教師無私奉獻的精神。
通過些次學(xué)習(xí)使我更清楚的認(rèn)識到:作為新時代的人民教師,更應(yīng)該用自己一顆摯熱的愛心去了解學(xué)生,公平地對待他們,尊重他們,關(guān)心、愛護他們。用自己的愛心去開啟每一個學(xué)生心靈的窗戶。讓教師的愛心成為孩子學(xué)習(xí)、生活成功的原動力,激發(fā)他們的求知欲和創(chuàng)造欲。
在不斷的付出自己對學(xué)生的愛心的同時,不斷地提高自身的師德修養(yǎng)。成為每名學(xué)生的良師益友,使自己的教學(xué)環(huán)境自然的形成民主、合諧、平等、愉樂的教學(xué)氛圍,成為培養(yǎng)孩子們創(chuàng)造性的思維的主陣地。
二、提升教學(xué)理念
新課改的春風(fēng)吹拂教育界好多年,我心中的教學(xué)理念也在不斷的提升中,通過這次學(xué)習(xí)我有了一個更清楚更系統(tǒng)的認(rèn)識?!罢衽d民族的希望在教育,振興教育的希望在教師”,沒有教師的支持,任何教育改革都無法進行。此次基礎(chǔ)教育課程改革所力圖實現(xiàn)“知識與技能、過程與方法以及情感態(tài)度價值觀”三位一體的課程功能。而此次學(xué)習(xí)我對這一功能有了簡單的體會:
教學(xué)目的的新構(gòu)想,教學(xué)的目的應(yīng)是為了挖掘每一個孩子的天分,培養(yǎng)其獨特的個性,教學(xué)活動應(yīng)成為促進學(xué)生全面發(fā)展的基石,教師則是構(gòu)筑基石的材料。多元化的發(fā)展、多元化的素質(zhì),。新課程所強調(diào)的課程內(nèi)容的選擇性正是為了適應(yīng)學(xué)生發(fā)展的不同需求而提出的。我們應(yīng)該用積極樂觀的眼光和態(tài)度來欣賞和預(yù)見學(xué)生的天性,應(yīng)將每一個學(xué)生都視為一片有待開發(fā)的資源和財富,并進行有效的挖掘和利用。我們首先要改變傳統(tǒng)的教學(xué)目的理念,認(rèn)識到教學(xué)活動的意義在于培養(yǎng)人的發(fā)展所必備的素質(zhì),諸如塑造學(xué)生健全的人格,健全的意志品質(zhì),陶冶豐富的情感,培養(yǎng)研究性學(xué)習(xí)的能力,樹立正確的價值觀念等。使學(xué)生學(xué)會做人、學(xué)會求知、學(xué)會生活、學(xué)會創(chuàng)造、得到全面和諧的發(fā)展,成為新一輪課程改革所力求達成的目標(biāo)。剛走出大學(xué)校門,我就很榮幸地成為合肥格力公司中的一員,懷著自己美好的希望和從零開始的心態(tài),開始了自己人生的新征程。
三、提升教學(xué)方法
教學(xué)活動的新詮釋,樹立以生命為本的教學(xué)過程觀、以研究為主體的教學(xué)方式觀、以促進發(fā)展為目的的教學(xué)評價。葉瀾教授曾經(jīng)指出:“今日教學(xué)改革所要改變的不只是傳統(tǒng)的教學(xué)理論,還要改變千百萬教師的教學(xué)觀念,改變他們每天都在進行著的、習(xí)以為常的教學(xué)行為。”作為學(xué)生生命成長的重要支柱,教師必須轉(zhuǎn)變觀念,認(rèn)識到教學(xué)活動并不是圍繞書本傳授“符號”的過程,做教材的“奴隸”,而在于以課程為中介,通過師生之同的積極互動,將課程“動態(tài)化”,通過體驗和發(fā)現(xiàn)去開發(fā)新的課程,能動地、個性地解讀教材,去創(chuàng)建新的課程意義,使課程活起來,使教學(xué)活起來,力求達到生命的一次又一次的提升。
以上就是我此次學(xué)習(xí)的一點心得體會,可能某些方面的認(rèn)識還很膚淺,但我相信,用我對一顆對教育的執(zhí)著追求的奉獻之心,在以后的工作中會不斷的提升自己,完善自己,時刻看到自己、認(rèn)識自己、豐富自己。
將本文的word文檔下載到電腦,方便收藏和打印
推薦度:
點擊下載文檔
搜索文檔
數(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ù)字—空格—特殊字符—文本總字?jǐn)?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)然最好。并非我們最初想到的算法就是最好的算法,所以,有事我們會而不得不在編寫途中終止換用其他算法,但是,我認(rèn)為這不是浪費時間,而是一種認(rèn)識過程,在編寫程序中遇到的問題會為我們以后編寫程序積累經(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)過仔細(xì)探索,對每個函數(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)課程感想篇七
本章作為全書的導(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ù)據(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)課程感想篇十
這次課程設(shè)計的心得體會通過實習(xí)我的收獲如下:
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)濟觀念和全局觀念。從剛開始得覺得很難,到最后把這個做出來,付出了很多,也得到了很多,以前總以為自己對編程的地方還不行,現(xiàn)在,才發(fā)現(xiàn)只要認(rèn)真做,沒有什么不可能。
編程時要認(rèn)真仔細(xì),出現(xiàn)錯誤要及時找出并改正,(其中對英語的要求也體現(xiàn)出來了,因為它說明錯誤的時候都是英語)遇到問題要去查相關(guān)的資料。反復(fù)的調(diào)試程序,最好是多找?guī)讉€同學(xué)來對你的程序進行調(diào)試并聽其對你的程序的建議,在他們不知道程序怎么寫的時候完全以一個用戶的身份來用對你的用戶界面做一些建議,正所謂當(dāng)局者迷旁觀者清,把各個注意的問題要想到;同時要形成自己的編寫程序與調(diào)試程序的風(fēng)格,從每個細(xì)節(jié)出發(fā),不放過每個知識點,注意與理論的聯(lián)系和理論與實踐的差別。另外,要注意符號的使用,注意對字符處理,特別是對指針的使用很容易出錯且調(diào)試過程是不會報錯的,那么我們要始終注意指針的初始化不管它怎么用以免不必要麻煩。
通過近兩周的學(xué)習(xí)與實踐,體驗了一下離開課堂的學(xué)習(xí),也可以理解為一次實踐與理論的很好的連接。特別是本組所做的題目都是課堂上所講的例子,在實行之的過程中并不是那么容易事讓人有一種紙上談兵的體會,正所謂紙上得來終覺淺絕知此事要躬行。實訓(xùn)過程中讓我們對懂得的知識做了進一步深入了解,讓我們的理解與記憶更深刻,對不懂的知識與不清楚的東西也做了一定的了解,也形成了一定的個人做事風(fēng)格。
通過這次課程設(shè)計,讓我對一個程序的數(shù)據(jù)結(jié)構(gòu)有更全面更進一步的認(rèn)識,根據(jù)不同的需求,采用不同的數(shù)據(jù)存儲方式,不一定要用棧,二叉樹等高級類型,有時用基本的一維數(shù)組,只要運用得當(dāng),也能達到相同的效果,甚至更佳,就如這次的課程設(shè)計,通過用for的多重循環(huán),舍棄多余的循環(huán),提高了程序的運行效率。在編寫這個程序的過程中,我復(fù)習(xí)了之前學(xué)的基本語法,哈弗曼樹最小路徑的求取,哈弗曼編碼及譯碼的應(yīng)用范圍,程序結(jié)構(gòu)算法等一系列的問題它使我對數(shù)據(jù)結(jié)構(gòu)改變了看法。在這次設(shè)計過程中,體現(xiàn)出自己單獨設(shè)計模具的能力以及綜合運用知識的能力,體會了學(xué)以致用、突出自己勞動成果的喜悅心情,也從中發(fā)現(xiàn)自己平時學(xué)習(xí)的不足和薄弱環(huán)節(jié),從而加以彌補。
數(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)
數(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)在想起來,收獲還真是不少,雖然說以前非常不懂這門語言,在它上面花費了好多心血,覺得它很難,是需用花費了大量的時間編寫出來的?,F(xiàn)在真正的明白了一些代碼的應(yīng)用,每個程序都有一些共同點,通用的結(jié)構(gòu),相似的格式。只要努力去學(xué)習(xí),就會靈活的去應(yīng)用它。
數(shù)據(jù)結(jié)構(gòu)課程感想篇十三
11計本一班 許雪松 1104013018
數(shù)據(jù)結(jié)構(gòu)與算法是計算機程序設(shè)計的重要理論技術(shù)基礎(chǔ),它不僅是計算機科學(xué)的核心課程,而且也已經(jīng)成為其他理工專業(yè)的熱門選修課??偟膩碚f感觸還是比較深的,剛開始上的時候還蠻簡單的,越到后面感覺越難,算法也更復(fù)雜了,有時候甚至聽不懂,老師上課時講的也蠻快的,所以只能靠課下下功夫了。下面是我對本學(xué)期學(xué)習(xí)這門課的總結(jié)。
一、數(shù)據(jù)結(jié)構(gòu)與算法知識點
第一章的數(shù)據(jù)結(jié)構(gòu)和算法的引入,介紹了數(shù)據(jù)和數(shù)據(jù)類型、數(shù)據(jù)結(jié)構(gòu)、算法描述工具、算法和算法評價四個方面的知識。
第二章具體地介紹了順序表的概念、基本運算及其應(yīng)用?;具\算有:初始化表、求表長、排序、元素的查找、插入及刪除等。元素查找方法有:簡單順序查找、二分查找和分塊查找。排序方法有:直接插入排序、希爾排序、冒泡排序、快速排序、直接選擇排序及歸并排序等。最后介紹了順序串的概念,重點在于串的模式匹配。
第三章主要介紹的是線性邏輯結(jié)構(gòu)的數(shù)據(jù)在鏈接存儲方法下數(shù)據(jù)結(jié)構(gòu)鏈表的相關(guān)知識。主要是單鏈表、循環(huán)鏈表的數(shù)據(jù)類型結(jié)構(gòu)、數(shù)據(jù)結(jié)構(gòu)、基本運算及其實現(xiàn)以及鏈表的相關(guān)應(yīng)用問題,在此基礎(chǔ)上介紹了鏈串的相關(guān)知識。在應(yīng)用方面有多項式的相加問題、歸并問題、箱子排序問題和鏈表在字符處理方面的應(yīng)用問題等。本章未完全掌握的是循環(huán)鏈表的算法問題和c的描述。
第四章介紹在兩種不同的存儲結(jié)構(gòu)下設(shè)計的堆棧,即順序棧和鏈棧的相關(guān)知識,了解堆棧的相關(guān)應(yīng)用,掌握應(yīng)用堆棧來解決實際問題的思想及方法。本章主要內(nèi)容是順序棧和鏈棧的概念、數(shù)據(jù)類型、數(shù)據(jù)結(jié)構(gòu)定義和基本運算算法及其性能分析。本章堆棧算法思想較為簡單,所以能較好掌握。
第五章主要介紹順序存儲和鏈接存儲方法下的兩種隊列、順序(循環(huán))隊列和鏈隊列的數(shù)據(jù)結(jié)構(gòu)、基本運算及其性能分析以及應(yīng)用。順序隊列(重點是循環(huán)隊列)和鏈隊列的概念、數(shù)據(jù)類型描述、數(shù)據(jù)結(jié)構(gòu)和基本運算算法及其性能分析等。本章同堆棧有點類似,算法思想較為簡單,所以能較好掌握;但難點重在循環(huán)隊列隊空、隊滿的判斷條件問題。
第六章“特殊矩陣、廣義表及其應(yīng)用”將學(xué)習(xí)數(shù)組、稀疏矩陣和廣義表的基本概念,幾種特殊矩陣的存儲結(jié)構(gòu)及其基本運算,在此基礎(chǔ)上學(xué)習(xí)特殊矩陣的計算算法與廣義表應(yīng)用等相關(guān)問題。本章的重點是相關(guān)數(shù)據(jù)結(jié)構(gòu)的存儲結(jié)構(gòu)及其基本運算算法。掌握了特殊矩陣的壓縮存儲結(jié)構(gòu),在該存儲結(jié)構(gòu)下元素的定位方法,理解了稀疏矩陣的計算和廣義表的存儲結(jié)構(gòu)。
第七章二叉樹及其應(yīng)用。分為二叉樹的基本概念、二叉樹存儲結(jié)構(gòu)、二叉樹的遍歷算法、線索二叉樹、二叉樹的應(yīng)用(哈夫曼樹、二叉排序樹、堆和堆排序、基本算法)?;舅惴òǘ鏄涞慕?、遍歷、線索化等算法。在此基礎(chǔ)上,介紹二叉樹的一些應(yīng)用問題,包括哈夫曼編碼問題、(平衡)二叉排序樹問題和堆排序問題等。
第八章說的是樹和森林,首先我們要知道樹與二叉樹是不同的概念。課本介紹了樹和森林的概念、遍歷和存儲結(jié)構(gòu),還有樹、森林和二叉樹的相互關(guān)系,樹或森林怎樣轉(zhuǎn)化成二叉樹,二叉樹又如何轉(zhuǎn)換為樹和森林等算法。
第九章“散列結(jié)構(gòu)及其應(yīng)用”是邏輯結(jié)構(gòu)“集合型”的數(shù)據(jù)元素在散列存儲方法下的數(shù)據(jù)結(jié)構(gòu)及其應(yīng)用知識內(nèi)容。主要介紹散列函數(shù)的概念、散列結(jié)構(gòu)的概念、散列存儲結(jié)構(gòu)的概念---散列表、散列函數(shù)和散列表中解決沖突的處理方法---開放定址法、鏈地址法以及散列表的基本算法及其性能分析。本章概念較為多,所以掌握不太好。
第十章圖及其應(yīng)用。分為圖的概念、圖的存儲結(jié)構(gòu)及其基本算法、圖的遍歷及算法、有向圖的連通性和最小生成樹、圖的最小生成樹、非連通圖的生成森林算法、最短路徑、有向無環(huán)圖及其應(yīng)用。
二、對各知識點的掌握情況
我對各知識點的掌握情況總結(jié)如下:
對于第一章對數(shù)據(jù)結(jié)構(gòu)的概念理解頗深,大概是每次都要談?wù)摰桨?。對算法的時間性能,空間性能基本了解。這些在后面的章節(jié)都會有運用。第二章本章重點和難點在查找和排序問題的算法思想上,6種排序方法的性能比較。本章未掌握的為希爾排序、快速排序、歸并排序的時間復(fù)雜度分析。第三章,對鏈表掌握還好,對其數(shù)據(jù)結(jié)構(gòu)進行了分析,有循環(huán)鏈表,掌握的不是很好,對其中一些用法不熟練。第四章堆棧,本章堆棧算法思想較為簡單,所以能較好掌握,但表達式計算問題未掌握好的。第五章的循環(huán)隊列隊空、隊滿的判斷條件問題掌握的不是很好。第六章的重點是相關(guān)數(shù)據(jù)結(jié)構(gòu)的存儲結(jié)構(gòu)及其基本運算算法。掌握了特殊矩陣的壓縮存儲結(jié)構(gòu),在該存儲結(jié)構(gòu)下元素的定位方法,理解了稀疏矩陣的計算和廣義表的存儲結(jié)構(gòu)。第七章對二叉樹掌握較好,其概念,存儲,遍歷有很好的掌握。就是對二叉排序樹有點生疏,它的生成算法不是很會。第八章樹樹與二叉樹之間的轉(zhuǎn)換,森林與二叉樹的轉(zhuǎn)換算法思想基本掌握。第九章散列的一些知識,沒有深入學(xué)習(xí),大概了解了散列存儲結(jié)構(gòu)散列表,散列函數(shù),沖突的處理方法。第十章了解了圖的逆鄰接表的存儲結(jié)構(gòu),關(guān)鍵路徑求解算法未能掌握好,不能靈活運用圖的不同數(shù)據(jù)結(jié)構(gòu)和遍歷算法解決復(fù)雜的應(yīng)用問題。
三、學(xué)習(xí)體會
剛剛接觸這門課時,看到課本中全是算法,當(dāng)時就暈了,因為我的c語言學(xué)的不好,我擔(dān)心會影響這門課的學(xué)習(xí),后來上課時老師說學(xué)習(xí)這門課的基礎(chǔ)是c語言,所以我當(dāng)時就決定一定要好好補補,爭取不被拖后腿,在學(xué)習(xí)這門課的期間,也遇到了不少問。但是通過學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)與算法,讓我對程序有了新的認(rèn)識,也有了更深的理解。同時,也讓我認(rèn)識到,不管學(xué)習(xí)什么,概念是基礎(chǔ),所有的知識框架都是建立在基礎(chǔ)概念之上的,所以,第一遍看課本要將概念熟記于心,然后構(gòu)建知識框架。并且,對算法的學(xué)習(xí)是學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)的關(guān)鍵。在第二遍看課本的過程中,要注重對算法的掌握。對于一個算法,讀一遍可能能讀懂,但不可能完全領(lǐng)會其中的思想。掌握一個算法,并不是說將算法背過,而是掌握算法的思想。我們需要的是耐心。每看一遍就會有這一遍的收獲。讀懂算法之后,自己再默寫算法,寫到不會的地方,看看課本想想自己為什么沒有想到。對算法的應(yīng)用上,學(xué)習(xí)算法的目的是利用算法解決實際問題。會寫課本上已有的算法之后,可以借其思想進行擴展,逐步提高編程能力。
四、對課程教學(xué)的建議
1、課程課時較緊,課堂上的練習(xí)時間較少,講解的東西越多,頭腦有時就很混亂。
2、感覺上課時的氣氛不是很好,雖然大部分人都在聽,可是效果不是很好。所以希望老師能在授課中間能穿插一些活躍課堂氛圍的話題,可以是大家都非常關(guān)心的一些內(nèi)容,這樣既讓大家能在思考之余有一個放松,也能夠提高學(xué)生的學(xué)習(xí)積極性和學(xué)習(xí)效率。
3、學(xué)習(xí)的積極性很重要,有時候我們花了很長時間去寫實驗報告,也很認(rèn)真的去理解去掌握,可是最后實驗報告可能就只得了一個c,抄的人反而得a,這樣的話很容易打擊學(xué)生的積極性,在后面的實驗報告中沒動力再去認(rèn)真寫。所以希望老師能在這方面有所調(diào)整。
4、雖然講課的時間很緊,但是還是希望老師能在講述知識點的時候能運用實際的調(diào)試程序來給我們講解,這樣的話能讓我們對這些內(nèi)容有更深刻的印象和理解。
數(shù)據(jù)結(jié)構(gòu)課程感想篇十四
這是一門純屬于設(shè)計的科目,它需用把理論變?yōu)樯蠙C調(diào)試。剛開始學(xué)的時候確實有很多地方我很不理解,每次上課時老師都會給我們出不同的設(shè)計題目,對于我們一個初學(xué)者來說,無疑是一個具大的挑戰(zhàn),撞了幾次壁之后,我決定靜下心來,仔細(xì)去寫程序。老師會給我們需要編程的內(nèi)容一些講解,順著老師的思路,來完成自己的設(shè)計,我們可以開始運行自己的'程序。
數(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è)計,使我對《數(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ù)據(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)建方法以及使用方式。“后進先出”是其基本原則。利用堆??梢暂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ù)渑判蛩惴?。了解了圖的逆鄰接表、十字鏈表、鄰接多重表存儲結(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)秀的文章來?!痹趯W(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ù)據(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ù)字—空格—特殊字符—文本總字?jǐn)?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)然最好。并非我們最初想到的算法就是最好的算法,所以,有事我們會而不得不在編寫途中終止換用其他算法,但是,我認(rèn)為這不是浪費時間,而是一種認(rèn)識過程,在編寫程序中遇到的問題會為我們以后編寫程序積累經(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)過仔細(xì)探索,對每個函數(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ǔ)決定上層建筑。只有基本功做好了,才有可能做出更好的成果。
【本文地址:http://mlvmservice.com/zuowen/5465781.html】