“數(shù)據(jù)結(jié)構(gòu)”是計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)、軟件工程專業(yè)甚至于其它電氣信息類專業(yè)的重要專業(yè)基礎(chǔ)課程。它所討論的知識(shí)內(nèi)容和提倡的技術(shù)方法,無(wú)論對(duì)進(jìn)一步學(xué)習(xí)計(jì)算機(jī)領(lǐng)域的其它課程,還是對(duì)從事大型信息工程的開發(fā),都是重要而必備的基礎(chǔ)。
程序設(shè)計(jì)解決問題往往有多種方法,且不同方法之間的效率可能相差甚遠(yuǎn)。程序的時(shí)間和空間效率,不僅跟數(shù)據(jù)的組織方式有關(guān),也跟處理流程的巧妙程度有關(guān)。本課程將介紹并探討有關(guān)數(shù)據(jù)組織、算法設(shè)計(jì)、時(shí)間和空間效率的概念和通用分析方法,幫助學(xué)員學(xué)會(huì)數(shù)據(jù)的組織方法和一些典型算法的實(shí)現(xiàn),能夠針對(duì)問題的應(yīng)用背景分析,選擇合適的數(shù)據(jù)結(jié)構(gòu),從而培養(yǎng)高級(jí)程序設(shè)計(jì)技能。
注意:本課程只涉及最基礎(chǔ)的數(shù)據(jù)結(jié)構(gòu)和與之關(guān)聯(lián)的最基本的算法,更多更復(fù)雜的數(shù)據(jù)結(jié)構(gòu)和經(jīng)典的解決優(yōu)化問題的算法,將在后續(xù)課程中介紹。
本課程的特點(diǎn)是,對(duì)每一種重要的經(jīng)典數(shù)據(jù)結(jié)構(gòu),我們都會(huì)從實(shí)際應(yīng)用問題出發(fā),導(dǎo)出其定義、實(shí)現(xiàn)(存儲(chǔ))方法以及操作實(shí)現(xiàn),并以更豐富的綜合應(yīng)用案例和練習(xí)題幫助學(xué)員增強(qiáng)對(duì)理論的感性認(rèn)識(shí),從而明白這些數(shù)據(jù)結(jié)構(gòu)為什么存在以及在什么情況下可以最好地解決什么樣的問題。為了兼顧起點(diǎn)不同的學(xué)員,課程中特意設(shè)計(jì)了“小白專場(chǎng)”系列,手把手教授如何將解決問題的抽象算法用具體的代碼實(shí)現(xiàn),從而引導(dǎo)初學(xué)者更好地入門。