數據結構實踐課程教學改革探析

時間:2022-10-13 09:42:17

序論:好文章的創作是一個不斷探索和完善的過程,我們為您推薦一篇數據結構實踐課程教學改革探析范例,希望它們能助您一臂之力,提升您的閱讀品質,帶來更深刻的閱讀感受。

數據結構實踐課程教學改革探析

1引言

數據結構是計算機學科的專業基礎課程之一,在計算機專業課程體系中起著承上啟下的作用[1]。該課程不僅為學科后續其他專業課程提供必備的知識儲備,更重要的是課程實踐中構造性思維的鍛煉和良好的編程能力為學生畢業后從事本專業工作打下一定的基礎。因此,本文從學生知識能力和綜合素養的培養為出發點,提出利用綜合項目作為驅動的數據結構實踐教學改革。

2傳統實踐課程設計

數據結構實踐課程傳統的教學內容設計分為:基礎性實驗、應用性實驗以及擴展性應用實驗。以線性表為例,基礎性實驗內容包括線性表中的插入、刪除、查找等基本操作的實現。應用性實驗主要圍繞將已實現的結構應用到簡單的問題解決,如集合合并問題、有序表合并問題等。擴展應用實驗則是結合實際問題中的數據分析,對所學結構進行修改并設計相應算法解決問題,如一元多項式求和問題[2]。通過實踐方式,學生能夠掌握常見抽象數據類型及其基本操作的實現,常用的查找算法、排序算法的實現并在非數值計算機問題中能夠靈活運用。但該方式的教學仍存在以下一些問題。(1)學生從面向過程到面向對象的編程思想轉變有一定的難度。學生經過一學期的C語言學習,但沒有經過系統的軟件開發訓練,仍然存在編程基礎差、代碼調式能力弱等問題。這些因素會嚴重影響學生完成課程實驗的質量。(2)學生編程能力參差不齊,教師指導無法具有針對性,課堂效率低下。課堂上教師對于實驗講解過于詳細,導致學生獨立思考的能力被制約。反之教師講解的較為粗略或是只給題目、指導過少,學生遇到問題則無法及時解決,可能出現嚴重復制他人代碼的現象。(3)課程實驗內容設計過于被動化和模塊化。學生根據給定題目編碼實現結構及解決給定問題的程序,缺乏對課程內容的自主思考。以至于在課程學習結束后,學生仍無法理解對課程前后內容進行關聯分析,對所學結構進行綜合應用的方法。(4)以學生提交解決問題的程序配合實驗報告作為考核依據的課程考核方式不合理。這種考核方式容易忽視掉學生的實際代碼編寫及調試能力,必然導致課程設計的教學效果欠佳。在傳統實踐課程設計模式下,學生未能在實踐中理解構造性思維方法,未能自主理解程序設計與數據結構和算法的關系。同時這種模式對于學生綜合素養方面未有明顯的鍛煉,與提高人才培養質量的教學目標是相違背的。

3項目驅動實踐改革

本文結合傳統教學設計存在的問題,提出項目驅動、線上線下相結合的實踐改革方案,將實驗設計為基礎性實驗和綜合項目,具體特色如下:(1)利用線上實驗測評平臺輔助基礎性實驗教學的開展。不受課堂時間和地點限制,實驗內容在題型、題量上設計可以更加靈活豐富。另外測評平臺有系統查看學生提交代碼情況等優勢,有助于學生自主查閱資料解決問題能力的提高。(2)增加綜合項目設計實現部分。按照三個階段模擬項目開發實現的流程,鍛煉學生綜合應用結構和算法解決復雜工程問題的能力。同時引入小組分工合作、項目文檔撰寫、項目驗收介紹等環節,進一步鍛煉學生的綜合素養。實踐課程總學時為30學時,內容按照數據結構的實現及應用、綜合項目的調研選題、查找排序算法的實現及應用到綜合項目的編碼實現及驗收檢查等進行安排。

3.1基礎性實驗教學設計

實踐課的教學目的是通過實驗訓練對理論教學知識點中的重點難點加深理解,掌握綜合應用所學技術解決復雜工程的能力。(1)基礎性實驗內容包括常見的抽象數據類型采用順序存儲或是鏈式存儲實現,經典查找算法、排序算法的編碼實現并在非數值計算機問題中進行靈活運用。基礎性實驗要求每個學生單獨完成,學時安排為22學時,跨度貫穿整個理論課的教學過程。該部分實驗設計的主要目是對數據結構理論課程教學中的重點知識進行鞏固、強化,培養學生運用所學基本概念和編程技能實現數據結構及其算法的能力[3]。(2)實驗教學借助現有成熟的拼題A程序設計類實驗教學輔助平臺進行。教師利用平臺上豐富的題型設計實驗內容,從判斷題、選擇題、程序填空題、函數題、編程題由易到難、由淺入深設計每章節的實驗內容[4]。課內實驗設計基本以填空題、函數題和編程題為主。教師設計好實驗內容并定時發布和結束題目集,學生在線提交代碼進行測試。測評系統能夠實時查看評測結果,結合評測結果提示學生能夠及時發現問題解決問題。教師也可以結合學生的提交情況,整理題目集中共同的問題,發現難點進行有針對性的答疑解惑,從而提高課堂的效率。利用線上測評平臺,學生不受地理和課堂時間的限制,根據自身情況由易到難、循序漸進地完成實驗內容,有效提高其自主解決問題的能力。

3.2綜合項目教學設計

綜合項目要求按小組進行,每組學生不超過3人。該部分安排8學時,跨度為4周進行。項目按照“調研選題-功能設計-詳細設計-編碼實現-測試-提交”這一過程進行。(1)第一階段教師發布項目任務書文檔,布置項目調研選題任務。在任務書中明確項目選擇的數據結構、查找算法、排序算法以及測試數據的存儲等要求。選題以學生主動、適度、適量為基礎進行調研確定。每個小組可以結合學生自身能力進行合理分工,要求每位學生都參與到綜合項目設計和實現。在實施過程中,由于大學二年級的學生未經過系統的軟件開發訓練,普遍缺乏分析和編寫較大程序的經驗,對于軟件開發的基本流程全無了解,不具備駕馭全局解決實際問題的能力。教師可以引導學生綜合利用已有知識和興趣點進行課程設計,盡量選題多樣化。該階段要求每個小組結合“項目的功能-擬選擇的結構-擬實現的結構操作-結構擬采用的存儲結構-擬構造的輸入測試數據-擬構造的輸出測試數據”等內容,完成項目初步計劃表。(2)第二階段項目編碼實現。學生利用C/C++等編程語言對項目設計的結構、算法進行編碼實現。該階段需要發揮小組的團隊協作能力,協調不同學生負責的功能模塊的開發和調用關系[5]。教師結合各組制定的計劃表,監督進展情況,并作出實時的指導和答疑。(3)第三階段為項目的驗收檢查,采用檢查系統代碼以及提交項目報告的方式進行。系統檢查按照“功能演示-數據結構設計-算法設計-代碼介紹”流程進行。小組成員針對自己完成的模塊進行講解并回答教師的提問[6]。教師從結構設計的合理性和復雜性、算法設計的復雜性以及是否注意效率問題、測試數據輸入輸出方式、項目的創新性等分別對每個小組的完成情況給出具體的評價。在系統檢查過程中,教師針對項目設計的不足之處提出相應的建議,并結合問題的方式引導學生對數據、數據結構、算法、程序設計關系進行梳理,對復雜程序設計方法的掌握。

3.3課程的考核

包括基礎性實驗部分(50%)、綜合項目(40%)、平時表現(10%)三部分。平時表現主要是學生考勤、課堂紀律遵守等方面。基礎性實驗主要結合學生完成基礎性實驗的數量以及獨立完成程度進行打分。該部分由測評系統提供的數據作為參考。綜合項目部分主要以小組為單位進行考核。教師從文檔的撰寫質量,項目展示的質量、項目完成的飽滿度和復雜性、項目的創新性和實用性等方面進行評價。學生個人能力考查由教師和組長分別打分評價,教師結合學生個人對其在項目中的設計和實現部分的理解表達,以及和其他成員之間的協調合作等方面綜合評價。

4教學成效

項目驅動的課設改革目前在2021學年上學期、下學期分別對計算機科學與技術專業、軟件工程專業的2020級學生在數據結構實踐課程教學中實施,并收到了良好的教學效果:(1)2021學年上學期項目選題共37組,其中采用2種結構及以上的占81%,用到哈希算法的占3%。圖結構及應用選題1個,評選出優秀作品2個,良好作品3個。而2021學年下學期項目選題54組,其中采用2種結構及以上的占88.5%,用到哈希算法占21.2%。圖結構及其算法的應用選題增加了3個,最后評選出優秀作品6個,良好作品8個。隨著改革措施的推進,學生課設作品質量有明顯的提升。(2)在2021學年下學期期末時,教師通過問卷調查方式獲取學生對實踐教學的反饋。調查數據顯示,94%的學生認為經過實驗課程的學習編程能力有所提高,99%的學生能夠接受線上提交測評的方式完成基礎性實驗。從測評平臺上獲取學生習題集完成情況的數據分析表明:2021學年上學期習題集完成80%以上的學生數占比約88.7%,2021學年下學期習題集完成80%以上的學生數占比約93.4%。可知利用在線程序設計類實驗測試平臺協助基礎性實驗的教學實施,有效提高實驗效率。(3)針對綜合項目的問卷調查數據顯示,96%的學生認為綜合項目有效提高自己對數據結構和算法的綜合應用能力;63.5%的學生認為綜合項目能夠幫助自己更為系統地理解程序設計與數據結構和算法的關系,編碼能力得到了鍛煉;還有35%的學生反應對于部分結構的應用還不是很懂;57.5%的學生認為自己在綜合項目上的表現已達到預期的教學目標。

5總結

傳統實踐教學方式側重于學生知識能力的積累以及編程能力的鍛煉,而在學生綜合素養方面的培養考慮較少。項目驅動的實踐教學模式前期利用在線測評系統輔助基礎性實驗的實施,實現了學生對數據結構和算法實現原理的理解,有效地鍛煉其自主學習能力的教學目標。實踐教學后期引入綜合項目,有效地驅動學生自主使用課程知識分析問題、解決問題的能力。通過實踐加深對理論知識的理解、對程序設計與數據結構和算法關系的理解,提高學生程序設計能力。該教學設計不僅訓練了學生復雜工程的編碼能力,同時激發學生自主學習的熱情,對學生的溝通、團隊協作、文檔撰寫等綜合素養進行了培養。這一學年實踐課程改革的教學效果比傳統的教學模式有顯著提高,學生學習的積極性得到充分調動。但在實施過程中仍存在很多問題:如何引導學生選題多樣化,項目中復雜算法的應用;項目文檔的規范化、標準化、項目過程管理、課程考核的細化等方面需要在今后的教學中不斷改進完善。

參考文獻

[1]雷慶,張洪博,葉雙.新工科背景下數據庫系統原理課程的改革.福建電腦,2020,36(02):23-28

[2]嚴蔚敏,吳偉民.數據結構(C語言).北京:清華大學出版社,2021

[3]龍穎波,劉遠剛,何貞銘,蔡永香,李功權,鄧帆.GIS專業數據結構課程設計教學內容優化.計算機時代,2019(12):81-84

[4]孫笑微.基于PTA平臺的《C語言程序設計》教學改革與實踐.沈陽師范大學學報:自然科學版,2020,38(4):377-380

[5]趙曉,何立風,孫連山,李健,張行.雙模式驅動的數據結構課程設計.計算機教育,2016(5):41-43

[6]孫玉霞,楊朋英,熊旭輝,黃烜,劉紅日.算法與數據結構課程設計教學中的實踐探究.電腦知識與技術,2016,12(32):139-140

作者:陳亦萍 單位:福州大學至誠學院計算機工程系

上一篇: 現代企業財會管理創新探究 下一篇: 物業上市公司全面預算管理研究
相關文章
精選范文
相關期刊
友情鏈接
久久久噜噜噜久久中文,精品五月精品婷婷,久久精品国产自清天天线,久久国产一区视频
亚洲欧美自拍制服丝袜另类图 | 一区二区三区视频日本精品 | 亚欧成人中文字幕一区 | 日韩在线视频首页 | 久久综合丝袜国产 | 中文字幕不卡二区亚洲 |