999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

案例驅動的數據結構課程設計教學改革實踐

2009-03-06 05:17:56龐曉瓊
計算機教育 2009年1期
關鍵詞:教學改革

龐曉瓊

文章編號:1672-5913(2009)01-0053-03

摘要:本文針對傳統數據結構課程設計教學過程中出現的問題,提出一種案例驅動的數據結構課程設計教學方式,以幫助學生理解和掌握分析問題、解決問題的方法,提高自主學習能力,鍛煉設計創新能力。實踐表明,此教學方式能夠彌補傳統教學的不足,開闊學生的思路,提高自主完成率,達到課程設計目的。

關鍵詞:課程設計;數據結構;案例驅動;教學改革

中圖分類號:G642

文獻標識碼:B

1引言

數據結構課程是計算機相關專業的專業基礎課程,屬于專業課程體系中的核心課程。該課程著眼于對基本數據結構進行闡述和分析、講解基本數據結構的應用并介紹典型的基本算法等三個方面,內容比較抽象枯燥,掌握起來相對困難。數據結構課程設計是一門獨立的實驗環節,是對數據結構課程教學理論的延伸和補充,是對理論知識的綜合應用,其目的是發揮學生的主動性,培養學生分析實際問題并加以解決的能力,鍛煉學生的設計創新能力。

傳統的數據結構課程設計教學輕講授,主要以對學生的單獨輔導為主,督促學生完成課程設計。這種方式存在后文所提及的一些問題,隨著互聯網資源的日益豐富,部分問題更加突出了。為了能讓學生通過課程設計更好的掌握數據結構的內容,我們設計了案例驅動的數據結構課程設計教學改革,實踐證明,該項教改能夠填補傳統教學過程的不足。

2傳統教學過程中暴露的問題

(1) 缺乏駕馭全局的能力。本科二年級學生計算機建模能力弱,沒有軟件工程的思想,因而缺乏駕馭全局的能力。軟件工程課程一般都開設在數據結構課程之后,在進行數據結構課程設計前,學生也基本沒有分析、編寫較大程序的經驗,這種情況造成了學生拿到問題后不知該從何下手和如何規劃好課程設計的整個過程。

(2) 生搬硬套基本數據結構。數據結構教材中都是最原始的數據結構,不進行擴展和修改基本上是不能直接用到課程設計中解決實際問題的,而采用多種數據結構解決問題并加以比較找尋最優方案對于學生來說就更為困難。

(3) 對高級程序語言掌握不到位。數據結構課程設計是需要用高級程序語言來編寫的,學生對該程序語言的掌握程度直接影響到課程設計的質量,常見的問題包括:變量定義不規范、函數功能劃分不合理、代碼可讀性較差、文件讀寫掌握不好、調試程序能力較弱等。

(4) 照搬、照抄他人課程設計的現象存在。由于完成課程設計的時間有限,有的學生在無法自主完成的情況下,通過網絡、書籍等方式來查找解題方法。本來通過查閱資料消化吸收他人的解題思路來求解自己的課程設計問題是毋庸置疑的正規途徑,然而一方面課程設計的題目每個學校每屆學生都相對比較固定,致使存在抄襲往屆學生程序的現象,另一方面互聯網的發展使得查找相似題目的課程設計源代碼并非難事。此外,市面上還存在著大量快餐式的課程設計書籍在售,這類書籍良莠不齊,多是搜集、羅列了若干課程設計題目,源碼、光盤附上,草草分析講解了事。許多學生也習慣了這種快餐式的學習,能做到獨立思考、舉一反三的越來越少。

3案例驅動的數據結構課程設計教學改革特點

案例驅動的數據結構課程設計教學改革是將案例教學法引入數據結構課程設計教學中,教師通過講解一個完整的案例分析解決過程,輔以多媒體的手段與學生交流、互動,達到培養學生分析并解決實際問題的能力,鍛煉學生的設計創新能力的目的,同時也彌補了目前數據結構課程設計教學重實踐、輕講授的不足,豐富該項課程設計的教學內容。該方法有以下特點:

(1) 提前熟悉軟件工程思想。案例的分析解決過程就是一個實踐軟件工程思想的過程,學生可以在講解的過程中體會軟件開發的完整流程,進而對自己的課程設計有全局性的考慮。

(2) 舉一反三,定制合適的數據結構。對于案例講解中所涉及到的數據結構,教師將進行細致的分析。采用不同數據結構解決同一問題,在性能和功能上會有所區別,學生可以在與教師的互動討論中提高對各種數據結構的認識,從而設計適合解決自己課程設計的數據結構,甚至能夠采取多種解法。

(3) 養成良好的編程習慣。優秀的代碼就像優美的文章一樣能使閱讀者心情舒暢,教師講解的案例都是代碼級別的,定義規范、流程清楚、可讀性強、具備參考價值,這樣就促使學生養成良好的編程習慣。教師以多媒體手段演示代碼的編制調試過程,使學生對編程環境更加熟悉,能夠靈活運用跟蹤、斷點等調試手段,開發過程事半功倍。

(4) 最大限度避免抄襲課程設計的現象。大多數學生事實上都希望能夠自主完成課程設計,只是因為不會做才導致抄襲往屆學生或是市售相關書籍源碼的現象存在。授之以魚不如授之以漁,通過對典型案例的講授,教師教給了學生解決課程設計的方法,學生找到了突破口,便愿意通過自己的努力完成任務,自己能制作“大餐”,也就不再求助于“快餐”了。

4典型數據結構課程設計案例分析

“活期儲蓄帳目管理”是常見的數據結構課程設計題目,下面以其講解過程為例簡單描述一下案例驅動的數據結構課程設計教學的過程。

此課程設計需要實現的功能一般是:(1)采用交互工作方式;(2)實現儲戶開戶;(3)實現儲戶銷戶;(4)向某賬戶存款;(5)從某賬戶取款;(6)排序顯示所有賬戶信息;(7)查詢某賬戶余額;(8)查詢某賬戶交易記錄;(9)所有賬戶及其交易信息存儲至文件,程序運行時從文件中讀入。該課程設計考察的知識點包括:選擇并構造數據結構;使用與特定數據結構相應的算法來實現具體功能;對文件讀寫結構化數據;對程序設計語言的靈活運用等。

首先應對題目進行大致的分析,該題目包括兩方面的信息。一方面是儲戶的信息,可設計為包含賬號、姓名和余額等字段;另一方面是交易記錄信息,可設計為包括賬號、存取時間、存取標志、金額等字段,兩方面信息通過賬號字段關聯起來。使用順序存儲結構、鏈式存儲結構或樹形結構都可以存儲這些信息,但其中各有利弊。順序存儲結構設計簡單,但容量固定,賬戶插入刪除需要進行記錄的移動,單個賬戶的交易記錄信息存儲不易連續導致列舉時需要對全部交易記錄進行完整遍歷,對已排序順序表查找某一記錄時可以采用特定算法(如二分法)提高效率,總體上來說實用性和整體效率相對較差。鏈式存儲結構設計略復雜,容量不設上限,賬戶插入刪除較方便,采用鏈式結構存儲的交易記錄形式上連續,列舉時很方便,但在查找某一記錄時需要遍歷整個鏈表效率較低,總體上來說實用性和整體效率中上。樹形存儲結構相對最復雜,容量也不設上限,插入、刪除算法也相對復雜,采用特殊樹形結構(如二叉排序樹)能夠提高查找記錄時的效率,交易記錄仍可采用鏈式結構存儲,總體上來說實用性和整體效率較好,現實中的數據庫管理系統(DBMS)多是用樹形結構來實現的。從實現難度上來說,順序存儲最簡單,鏈式存儲次之,樹形存儲最難。因此,對學生一般要求其用鏈式存儲來實現,對能力較強的學生可以鼓勵其用樹形存儲來實現,以鏈式存儲為例繼續討論。

賬戶信息和存取記錄之間是通過賬號來關聯的,在鏈式存儲結構中可以用指針來表示兩者的聯系,即每個賬戶節點(數據域可包含賬號、姓名和余額等字段)具有兩個指針域,一個指針指向下一個賬戶節點,另一個指針域指向該賬戶的存取記錄鏈表(存取記錄節點的數據域可包含存取時間、存取標志、金額等字段),如下圖所示。

從功能上分析,儲戶開戶、儲戶銷戶就是在賬戶鏈表中進行插入和刪除操作;對賬戶存、取款時,首先找到相應賬戶,然后添加一條存取記錄,同時修正該賬戶的余額;排序顯示所有賬戶信息,就是對賬戶記錄依據某一關鍵字進行排序并顯示排序結果;查詢某賬戶余額,就是遍歷賬戶鏈表,找到對應記錄并顯示出來;查詢某賬戶交易記錄,就是先找到該賬戶,然后遍歷顯示該賬戶對應的存取記錄鏈表。可以看出,對賬戶鏈表進行遍歷查詢在賬戶存取款、查詢余額和查詢存取記錄是都有用到,因此在設計時,可以考慮編寫查詢賬戶函數,以供其他功能模塊調用。

在文件存取方面,存取時都是以存儲節點為單位進行的,即一次性存取一個結構體。該課程設計有其特殊之處,有兩種類型的結構體需要存取,即賬戶信息和存取款記錄,這兩種結構體所占用的空間不盡相同,若是都保存在一個數據文件中則需要一定的技巧。以保存記錄到文件為例,可以采用存一個賬戶信息,再存一個整形數,該整形數的數值為此賬戶對應存取記錄節點的數量,然后再逐一保存每條存取記錄,存儲完畢后再用相同方法保存下一個賬戶的記錄。讀取文件過程則是存儲過程的逆過程,這樣可以保證存取時,賬戶信息和存取記錄一一對應,不至于混淆。

在確定了上述思路后,便可以著手編碼,值得注意的是數據結構的定義。由于采用了鏈式結構,許多同學便直接將鏈式結構的節點(包括指針域)直接存儲到文件中。事實上,這個指針域是沒有保存價值的,尤其在讀取時如果也將指針域讀出并賦值,將很有可能導致不可預知的錯誤。可以采取的方法是,先定義只包含數據域的數據結構體,再定義鏈表節點結構體將數據結構體封裝起來并加上指針域,在文件讀寫時只對數據結構體進行操作。給出該課程設計數據結構參考定義如下:

typedef struct log //存取記錄

{

char DateTime[25]; //存取時間

char W_D; //存取標志

float Amount; //存取金額

} log;

typedef struct node_log //存取記錄節點

{

log data; //存取記錄

struct node_log *next; //下一存取記錄節點指針

} node_log, *p_node_log;

typedef struct account //賬戶記錄

{

char ID[10]; //賬號

char Name[10]; //姓名

float Balance; //余額

} account;

typedef struct node_account //賬戶記錄節點

{

account data; //賬戶記錄

struct node_log *nlog; //存取記錄節點指針

struct node_account *next; //下一賬戶記錄節點指針

} node_account, *p_node_account;

其他功能模塊便可以參照數據結構教材上的相關算法設計實現。

5結果與結論

我們將來自3個不同專業(計算機、網絡工程、軟件工程)10個班級的57名同學分成了兩組,一組(試驗組)通過上述方法進行了課程設計教學,一組(對照組)仍采用傳統方法教學,課程設計題目相同。課程設計對比統計情況如下表,其中試驗組優良率達到44%,不合格率13%,對照組優良率21%,不合格率26%。同時,試驗組采用了多種方式來實現了課程設計,且雷同情況較少,對照組多數采用順序存儲方式實現,程序雷同情況較多。很明顯,試驗組的學生思路更加開闊,自主完成率更高。

時代在變遷,信息獲取更加便捷,部分學生的學習積極性在某種程度上也發生了蛻變,隨之的教學方式也應有所改變,教師應從正面加以引導。在以案例驅動的數據結構課程設計教學改革實踐中,教師通過對典型案例的細致分析,比較不同數據結構的優缺點,一方面使學生更加牢固的掌握了數據結構知識,另一方面讓學生找到入手之門,激發學習興趣,提高動手能力,更重要的是能讓學生掌握分析和解決問題的方法,自主完成課程設計,這對今后其他課程的學習也是有所裨益的。

參考文獻:

[1] 張培,肖天慶. 基于網絡環境下教學設計與課程開發的合作模式研究[J]. 電化教育研究,2007,(9):60-63.

[2] 吳宏偉,張殿龍,梅險. 高校網絡輔助教學的探索與實踐[J]. 計算機教育,2007,(7):18-21.

[3] 張敏霞. 程序設計語言課程教學方法改革的探索與實踐[J]. 中國高教研究,2004,(2):90.

[4] 姜芳,楊晉明. 淺析研究性教學在高校教學中的運用[J]. 教育與現代化,2004,(1):13-16.

[5] 嚴蔚敏等. 數據結構[M]. 北京:清華大學出版社,2006.

猜你喜歡
教學改革
完全學分制下選課管理的思考與實踐
考試周刊(2016年76期)2016-10-09 10:08:04
金工實習教育對工科院校創客教育影響分析
考試周刊(2016年76期)2016-10-09 10:04:11
新形勢下小學語文教學方法研究
考試周刊(2016年76期)2016-10-09 08:47:08
譯林版英語教材的人文特點研究
成才之路(2016年26期)2016-10-08 11:33:49
當前農村學校實施“新教育實驗”的研究
成才之路(2016年25期)2016-10-08 10:05:54
構建和改進現代化學校美育工作體系研究
成才之路(2016年25期)2016-10-08 10:04:29
中職學校“生本課堂”的調查研究與實踐
成才之路(2016年25期)2016-10-08 10:03:04
高校三維動畫課程教學方法研究
成才之路(2016年25期)2016-10-08 10:00:36
基于人才培養的技工學校德育實效性研究
成才之路(2016年25期)2016-10-08 09:51:08
現代信息技術在高職數學教學改革中的應用研究
科技視界(2016年20期)2016-09-29 12:59:03
主站蜘蛛池模板: 一级毛片不卡片免费观看| 一本二本三本不卡无码| 日本高清视频在线www色| 性做久久久久久久免费看| 久久精品波多野结衣| 色偷偷一区二区三区| 欧美亚洲国产视频| 黄色在线网| 91小视频在线播放| 国产精品夜夜嗨视频免费视频| 白丝美女办公室高潮喷水视频 | 国产精品嫩草影院视频| 国产人成网线在线播放va| 亚亚洲乱码一二三四区| 亚洲av无码成人专区| 国产福利微拍精品一区二区| 超清无码一区二区三区| 国产产在线精品亚洲aavv| 欧美另类第一页| 天天干天天色综合网| 日韩精品成人在线| 日本三区视频| 免费人成在线观看成人片| 色AV色 综合网站| 强奷白丝美女在线观看| 91丨九色丨首页在线播放| 欧美人与性动交a欧美精品| 欧美一级夜夜爽www| 国产一区亚洲一区| 天天躁夜夜躁狠狠躁躁88| 免费毛片视频| 国产91av在线| 亚洲午夜国产精品无卡| 亚洲视频a| 亚洲 欧美 偷自乱 图片| 无码'专区第一页| 美女被狂躁www在线观看| 99性视频| 国内精品伊人久久久久7777人| 狠狠五月天中文字幕| 午夜毛片免费观看视频 | 麻豆精品在线| 国产精女同一区二区三区久| 国产玖玖玖精品视频| 中文字幕在线视频免费| 91免费片| 91免费在线看| 精品五夜婷香蕉国产线看观看| 国产免费怡红院视频| 国产迷奸在线看| 亚洲欧美一级一级a| 日韩在线第三页| 久草网视频在线| 啪啪免费视频一区二区| 国产免费高清无需播放器| 一本一本大道香蕉久在线播放| 在线欧美日韩国产| 欧美日韩中文国产va另类| 国产成人乱无码视频| 熟妇人妻无乱码中文字幕真矢织江| 国产主播喷水| a级毛片一区二区免费视频| 欧美在线视频不卡第一页| 丝袜高跟美脚国产1区| 国产精欧美一区二区三区| 国产亚洲精品精品精品| 青青操视频免费观看| 中国一级特黄大片在线观看| 成年人国产视频| 日韩天堂在线观看| 亚洲综合狠狠| 97久久超碰极品视觉盛宴| 亚洲Av激情网五月天| 婷婷综合在线观看丁香| 国产成人综合亚洲欧美在| 欧美中文字幕在线视频| 一级毛片在线免费视频| 亚洲综合欧美在线一区在线播放| 制服丝袜亚洲| 亚洲欧洲日韩久久狠狠爱| 亚洲毛片一级带毛片基地| 国产成人亚洲无码淙合青草|