數據結構與算法 pdf_第1頁
數據結構與算法 pdf_第2頁
數據結構與算法 pdf_第3頁
數據結構與算法 pdf_第4頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

數據結構與算法pdf關鍵詞:數據結構實驗教學《數據結構》是計算機專業課程體系的核心課程之一。課程主要講述各種數據的邏輯結構、物理結構及基本操作的實現算法以及數據查找、排序算法,并對各種算法進行性能分析和比較。根據調查發現,目前大多數院校《數據結構》課程教學現狀不容樂觀。學生普遍反映課程學習比較困難,教師也感覺教學效果不理想。實驗教學更是因為程序設計語言基礎不扎實、課程內容太抽象等原因而較難開展,有些學校因此而縮短學時甚至不開設實驗。一些專家和教師就課程實驗教學改革已經提出了一些具體的教學方法,如案例驅動、課題答辯等。這些方法都具有比較重要的借鑒價值,但某些文章過于片面的強調某一種教學方法。筆者認為根據學生的實際情況完善、加強教學管理,通過行之有效的教學手段使學生學有所獲才是根本。下面結合自己的實際教學工作,談談對數據結構實驗教學方法的認識。我校《數據結構》課程理論學時48,實踐學時16,教材選用嚴蔚敏的《數據結構(C語言版)》)。1講好理論第一課,明確課程性質僅從課程名稱來看,《數據結構》就很容易被誤解為實踐性不強的理論課。講好第一堂理論課非常重要,應讓學生明確課程性質并理解實踐學習的重要性。結合程序設計語言、操作系統等課程內容,筆者設計了一些學生比較熟悉并容易理解的應用實例和學生一起探討,如:inta[10]和a[i]=5的確切含義;文件簇的鏈式形態;國際象棋大師與超級計算機的對決;圖的著色問題等。在講解圖的著色問題時引導學生思考圖的存儲中需要關心什么,怎么存以及大致的程序邏輯等。通過對實例的分析,引入課程主要內容,學生也可明確課程的性質和專業地位并思考課程學習目標。2制定實驗教學計劃,設計實驗內容程序設計語言是數據結構的前驅課程之一,多數院校都是以C語言程序設計作為學生程序邏輯訓練的課程。數據結構教材中采用類C語言來描述算法,對指針、結構體等內容并未作詳細的介紹。對于剛剛學完C語言的學生來說,指針等內容本來就比較模糊,要將類C算法轉換為程序實現就更加困難。在制定實驗教學計劃時,可以采用由易到難、逐步加深的方式來安排實驗內容。結合實驗學時數和教學大綱要求,筆者將實驗內容作了如下設計和安排:2.1第一次上機任務只要求學生運用以前學過的C語言知識來編寫一個程序:給定一個整數序列,要求①用冒泡或選擇算法進行排序;②輸入一個整數X,在此有序序列中進行查找,如成功,則返回其位置;③如查找不成功,將X插入到序列中并使序列仍然有序。此題目運用到數組的定義、排序、查找、數組元素插入算法等相關內容。通過此實驗,不僅能了解學生程序語言的熟悉程度,也能了解學生對排序和查找等基礎算法的掌握情況,為后面教學內容設計作好鋪墊。2.2結合教學進度要求學生實現常見數據結構的基本操作,并能作一些驗證性的實驗。如用數字菜單的形式實現單向鏈表的基本操作,并完成兩個有序鏈表合并算法的驗證。實驗要求學生能實現大多數基本操作算法,完成頭文件的設計,并能利用已實現的基本操作完成復雜算法的驗證。通過此類實驗,學生對數據結構的理解更直觀,程序邏輯更清晰,C語言的掌握能力逐漸增強,同時也為面向對象課程的學習打下一定的基礎。2.3設計性實驗即課程設計安排。課程設計的目的在于培養學生分析和解決實際問題的能力,訓練和提高學生規范的程序設計方法。教師可推出一些典型的并與后續課程有一定聯系的題目供學生選擇。每個題目規模不能太小,并能反映相關數據結構在程序設計中起的關鍵作用。如:①實現一個串的基本操作演示程序,提供命令行的輸入(仿照COMMAND),并對命令行能進行簡單的編譯和出錯處理,最后根據命令動的功能來執行命令;②利用哈夫曼編碼算法實現簡單文本文件的壓縮和解壓。題目隨著理論教學進度推出,有難有易,學生結合自己實際來選擇并可提前完成。3規范實驗過程,加強實驗教學管理為保障計劃的有效實施,必須規范實驗過程并加強實驗教學管理。3.1根據計劃制定實驗指導書。指導書中給出每個實驗的目的、學時、內容等。其中設計性實驗另給出一些基本的分析思路,每個實驗都適當的添加一些選作題。學生通過閱讀實驗指導書能進一步明確每次實驗的具體內容和要求。3.2要求學生做好上機前的準備。大二學生的編碼速度普遍較慢,如果把實驗課時間主要用于輸入代碼是非常不值得的,應將主要精力放在程序調試上面。這樣不僅有充足的提問時間,也便于教師歸納并集中講解學生調試過程中所遇到的常見問題。3.3要求學生實驗后完成實驗報告。報告中須給出問題分析、數據描述、算法描述、程序描述、測試結果和心得體會等內容。教師對學生提交的實驗報告進行分析,并指出實驗的成功和不足之處。3.4加強實驗教學管理,從正面引導學生。隨著網絡信息技術的發展,網絡中提供的各種信息服務和娛樂方式使部分學生的學習積極性逐漸降低,學習目標也越來越不明確。如果管理松懈,有些學生就會把實踐學習當成是簡單的Ctrl-C和Ctrl-V,不能達到實驗教學的預期目標。因此,教師應了解學生的學習動態,加強實踐教學管理,并根據實際情況進行相應調整和改4豐富教學手段,搞好實驗指導在實踐教學過程,教師不能只停留于解決學生提出的問題,還應不斷摸索教學方法,豐富教學手段。到結果;再讓學生逐個實現其余算法,最后完成頭文件的設計。學生通過教師演示和實際操作可以更快的掌握類C算法和C程序的轉換思路。4.2數據結構中的程序規模相比C語言來說更大。由于缺乏經驗,很多學生在程序調試中會出現較多的語法和邏輯錯誤,可利用多媒體網絡教學手段在學生機上直接演示并講解程序調試的方法和技巧。算法,可有選擇性的適當的“刺激”部分學生以激發其不服輸的心理,從而帶動其他學生。能力較強的學生,鼓勵他們多做題,做難題,為今后參加各種資格水平考試和專業競賽作好準備。《數據結構》是一門理論和實踐結合性非常強的課程,其

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論