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