摘要:數據結構課程在計算機專業中具有一定的地位,課程教學從教材、講授、實驗指導都體現了先進的教育理念。但在實際的教學當中,數據結構課程對學生來說比較難以理解,學生在學習的過程中具有一定的困難,這也就導致了當前課后教學中存在一些問題。本文闡述了數據結構課程在高校計算機專業中的作用,對數據結構教學中由于授課對象存在一定的差異性、教師沒有明確的教學目的、教學方式單一化、學生缺乏實踐活動和缺少對網絡資源利用的基本現狀作出分析,探討了高校計算機專業數據結構教學改革的方法。
關鍵詞:計算機專業; 數據結構;教學改革
一、引言
數據結構是計算機專業學生需要學習的一門具有基礎性的核心課程,其中包括如何組織各種數據在計算機中進行存儲、轉換和傳遞。但教學內容也存在著一定的抽象性,學生在沒有接觸了解過的前提下,對這門課程的學習具有一定的難度。所以教師要保證學生的學習成果,主要內容應以課堂講解的模式,先讓學生具有初步的認識和了解,再輔以一定的實踐操作活動,使學生能夠很快地掌握課程的主要知識和解決相應問題的辦法。
二、數據結構課程在高校計算機專業中的作用
(一)數據結構課程的特點
數據結構是計算機專業的基礎課程,采用國內的專業教材,結合實際的理論研究和科研動態,以課堂教學為主,以大作業和上機實踐為輔的課堂模式,培養學生的專業水平。數據結構課程內容側重于對理論知識的理解和掌握,它是一門集技術性、理論性和實踐性于一體的綜合性課程。介紹抽象數據類型和基本數據結構,闡述各種數據結構內在的邏輯關系,討論各種數據結構在計算機中的存儲表示及算法實現。雖然課程內容比較難以理解,但對培養學生的專業思維和形成獨立的風格具有一定的幫助,所以教師在進行課程教學時,應注重如何讓學生能夠進入課堂教學,將抽象的理論定義用簡單的知識進行闡述,強化學生的學習能力,同時還考驗著教師的教學水平[1]。
(二)數據結構課程的作用
對于計算機專業的學生來說,對數據結構課程的學習具有重要的作用,學生在學習后能夠對計算機專業具有一定的了解,為學生未來在計算機行業的發展奠定了一定的基礎,也是今后工作的重要內容。數據結構課程是計算機專業學生的一門基礎課程也是必修課程,學生在進行計算機專業的學習就要先經過數據結構這門課程的學習。它的內容包括:數組、鏈接表、棧和隊列、遞歸、樹與森林、圖、堆與優先級隊列、集合與搜索結構、排序、索引與散列結構等。課程采用面向對象的觀點討論數據結構技術,并以兼有面向過程和面向對象雙重特色的C++語言作為算法的描述工具,強化數據結構基本知識和面向對象程序設計基本能力的雙基訓練。主要是讓學生在學習課程之后能夠充分掌握重要數據結構的概念、使用方法以及實現技術的同時學會做簡單的算法分析,包括算法的時間代價和空間代價。因此數據結構在計算機專業學習中具有非常重要的作用,也為后續計算機專業課程的學習打下堅實的基礎。
三、高校計算機專業數據結構教學中存在的問題
(一)授課對象存在一定的差異性
由于學生的學習能力和接受能力的不同,學生之間就具有一定的差異性,對計算機專業的學習也是如此,有些學生的學習能力比較強,對于一些專業的理論知識就能很快地理解,但與之相反,有些同學對專業的理論知識就比較難以理解,尤其是數據結構這一課程,對于理論知識的理解能力有著比較高的要求,很多知識比較抽象化,很容易產生兩極分化,理解能力相對差的學生可能會花費大量的時間去學校,就會影響整體的學習進度,也會影響學生的學習成果。但教師如果知識強調比較淺顯的理論知識的講解,對于學習能力比較強的學生來說,不利于其創造性思維的發展[2]。
(二)教師沒有明確的教學目的
很對教師對數據結構課程的教學只要求學生掌握一些基本的內容和操作,在授課過程中由于教學內容理論性,知識點比較抽象化,導致學生在課程學習中具有一定的困難,也不能理解學的內容到底是什么,有什么用處。在實驗課上也不能實際地去分析問題,對問題存在一定的疑惑性,這樣就很難能在實驗中應用數據結構所學的理論知識。而數據結構中大量算法,理解一個算法并不僅是能把一個算法表面上的東西記住,然后自己能復寫出來而已。真正的理解是理解算法的思想,為什么要這么做,有什么好處,與別的解決一個問題的算法相比,優劣在哪?以及處理問題的時候,能用這個思想方法來解決不同的問題,絕不僅限于算法本身,算法只是表象,思想才是實質。
(三)教學方式單一化
目前,許多院校的教師對數據結構課程的教學仍然以傳統的教學方法對學生進行教學,主要以教學大綱為主,將課程內容的各章各節進行分類,按照規定進行對教材內容的講解,對于課程的重點內容沒有很好地突出。教師在進行授課時,就只是將教材內的內容講解給學生,沒有突出重點,也沒有將具有聯系的知識點進行串聯,學生在下面聽,一股腦兒地接受所有的知識,在實際操作中的教學也是如此,學生在進行操作時大多是按照要求按部就班地開展實驗,這種灌輸性的教學對學生具有一定的影響,壓制了學生創造性思維的形成,不利于學生進行獨立地思考問題和解決問題[3]。
(四)學生缺乏實踐活動
在實際的課堂當中,教師大多是以理論基礎為主,對實際需要操作的內容相對來說比較少,學生就只是掌握理論知識,對后續的學習起不到有效的幫助。而實際上,理論課程與實驗教學過程往往是單獨開設的,兩者的授課教師具有不同的教學觀念,如果在教學當中沒有及時地溝通交流,可能導致知識點沒有有效的銜接,教學內容很容易產生空白,導致理論課程與實踐課程之間缺乏聯系,可能對后續的教學產生不同的問題,使學生不能深入地了解所學的知識。計算機專業在本質上就具有一定的實踐性,就算學生掌握足夠的理論性知識,但這對學生來說還不夠,只有多參與實踐,將理論知識與實際操作相結合增加實際的操作經驗,才能將理論知識“吃透”,才能夠獨立地完成對不同程序的編寫以及相關軟件的操作。
(五)缺少對網絡資源的利用
學生在進行數據結構課程的學習時的主要途徑就是教師在課堂上的講解,但這門課程實際上具有一定的難度,所以,學生僅僅依靠教師的講解進行學習,就具有一定的局限性,對課后的復習和實際操作也是非常重要的。而現如今的網絡信息技術逐漸被普及,很多學校也積極地應用網絡教學,為學生搭建學習課程的網上平臺,也方便學生的進行課前的預習和課后的復習,但這些平臺大多只是課程相關的題庫,內容比較復雜,且不夠多樣化,學生在做題時容易遇到困難,所以不適合學生自學,效果不理想,也不能激發學生的學習興趣[4]。
四、高校計算機專業數據結構教學改革的探討
(一)改變傳統的教學模式,增加學生的主動性
從課堂教學上來看,由于學生具有一定的差異性,教師在進行數據結構的理論講解時,應該適當地增加一些現代化的元素,吸引學生的注意力,在傳統教學模式下加入一些案例增強學生的理解能力,結合實際的現實生活案例,以多媒體PPT的形式展現給學生,讓學生能夠通過各種案例的實施發現其中的問題,并根據問題作出獨立的思考和解決,能夠盡量地減小學生之間的差異性,真實的案例分析能夠提高學習能力較差學生的理解能力,而對于學習能力強的學生也可以讓他們通過實際案例引發思考,培養學生的創造性思維。從實驗課程的教學來看,應該結合學生的實際學習情況和個體差異性,將學習能力強的學生和學習能力不高的學生組成一個實驗小組,讓學習能力強的學生能夠起到一定的帶動作用。
在實驗課程開始之前,教師可以布置一些能夠考查學生學習效果類的實驗項目,學生通過對項目的了解和掌握的理論知識進行實際操作,使學生在操作過程中能夠充分理解相應的理論知識,在課程結束后,應依據課程內容要求學生完成實驗報告,將實驗過程和實驗結果完整的體現在實驗報告當中,進一步加深學生對教學內容的理解。
(二)合理安排教學內容,強化教學目標
數據結構課程的教學內容具有理論性比較強的特點,教師在開課之前,應該與本校教師進行研討,清晰教學目標,根據教學大綱將課程內容進行大致梳理,對課程內容進行嚴格篩選,對每章每節的教學要有合理的安排,以以往的教學經驗分析學生的需求。
在進行授課時,要結合教學任務和學生的實際學習情況,調整教學內容,重點的知識詳細講解,反復講解,盡量讓所有學生能夠理解重點知識,對相對簡單的教學內容就可以粗略地帶過,比如說一些淺顯的定義,操作步驟等,也可以留在課后讓學生自主進行學習。
這樣能夠讓學生充分地了解到哪里是重點知識,需要付出努力學習,哪里是不太重要的知識,可以大致地學習,這樣的教學效果,可以突出重點教學內容,對知識的劃分也比較明顯,方便學生理解和學習,教師也能更好地完成教學任務,提高整體的教學質量[5]。
(三)充分利用理論知識,提高學生的實踐能力
對于理論知識的學習,實際上也是為學生的實際操作奠定基礎,上機操作也是獲取知識的重要手段。教師在課堂上的理論講解只是起到一定的引導作用,實際上還需要學生進行自我思考和實際的操作,除了讀懂教材上的內容外,也需要其他相關資料對其進行補充,并且根據所學的內容做題,加深印象的同時也能夠理解對知識的運用,才能掌握好知識點。其實目的也就是通過閱讀和做題提高自己對問題的思考以及解決的能力,為此院校方面應該結合課程的實際內容,多開展相應的實踐操作機會,要求學生珍惜實驗機會,真正做到學有所獲。學生在做上機實驗前,應事先將程序、調試數據、上機操作順序準備好。以實際提高學生自身的操作能力和上機效率為主,嚴禁抄襲或拷貝他人的成果,自覺培養科學、嚴謹的作風。除了院校提供的實際操作機會外,學生也可以利用自己的計算機自行進行操作練習,通過大量的實踐操作提升自己的學習能力和知識水平[6]。
(四)利用啟發式教學,提高學生的學習興趣
數據結構課程是一門需要不斷深入了解并思考的課程,因為這個課程當中包含了很多成熟的算法,這些算法其實都很經典,學生如果能夠完全掌握的話,對其后續的學習和發展都具有很重要的作用,但這些算法對于大多數學生來說比較難以理解。所以,教師在授課過程中,還是要將重點放在引導學生思考,多強調算法思想,在課堂上也可以通過各種經典案例的分析,讓學生通過學習可以在了解理論知識的同時提高對不同問題的思考和解決能力。經過調查顯示,大多數學生對數據結構這種理論知識比較多的課程不感興趣,難以激發他們的學習積極性,究其原因就是因為他們讓位這門課程沒有什么實用性,除了會在學校學習和考核外,以后很可能不會用到,而且學生在課程當中也會產生學好數據結構有什么用的疑惑。因此教師在授課過程中應該注重實踐,引導學生在實際生活與數據結構課程中的聯系,以此來提高學生的學習積極性。
具體來說,當用計算機來解決實際問題時,就要涉及數據的表示及數據的存儲和處理,這正是數據結構討論的內容。教師在講解重點內容后,可以對學生提出一些啟發性的問題,引導學生將所學的內容與現實生活之間的相關聯系,這樣不僅可以促進師生之間的雙向互動,也可以調動學生的學習興趣[7]。
(五)建立網絡平臺,充分利用數字化課程教學
學校方面應該針對不同的課程,與全國各地的高校進行溝通交流,建立適合教師與學生共同學習與交流的網絡平臺,豐富教學資源。尤其是偏遠地區的高校,在師資力量教學設備有所匱乏時,就可以積極鼓勵學生進行網絡課程的學習。網絡課程具有比較全面系統的課程大綱,也可以將與數據結構課程相關的課程和知識點進行聯系,細化課程中的重點內容。而且網絡課程對學生來說具有一定的自由性,學生可以按照自己的學習情況進行網絡課程的學習,在課堂上沒有聽懂的內容也可以在網絡課程上進行反復的學習觀看,直到能夠明白為止,也可以在課堂學習之后,面對自己難以理解和消化的知識點進行復習和鞏固。也可以從學校搭建的網絡平臺上查找與數據結構有關的試題進行自我檢測,遇到問題時可以以留言的形式向各個高校內的教師和同學進行提問,也可以互相交流對數據結構網絡課程的心得體會。
所以網絡平臺的搭建,可以有效地激發學生的學習興趣,提高學生學習課程的積極性從而能夠自主學習,也可以彌補教師思想觀念和課堂教學存在的不足之處。
五、結束語
總而言之,數據結構是計算機專業的核心課程,不管是教師還是學生本身都應該引起一定的重視,教師在進行授課時必須要引導學生正確的思考方式,將理論知識與實踐活動相結合,通過現代化的教學手段,盡可能提高學生的學習能力,滿足學生的學習需求,并且對其中存在的問題及時做出調整和改正。
作者單位:馮江輝? ? 湖北文理學院理工學院
教改項目:本文系湖北文理學院理工學院2019年度校級教研項目立項支持的“《數據結構》課程混合式教學的實踐與效果研究”課題(2019JYYB09)部分研究成果。
馮江輝(1986-), 男,漢族,山東榮成,碩士研究生,講師,研究方向:云計算,大數據。
參? 考? 文? 獻
[1]楊藝.新時期高校計算機專業教學改革研究——評《計算機專業教學改革研究》[J].教育發展研究,2020,40(1):1.
[2]林基艷,張雅瓊,張慧,等.”互聯網+”和”新工科”背景下榆林地方院校計算機專業教學改革研究[J].微型電腦應用,2020,36(1):4.
[3]李悅.高校計算機教育教學實踐與創新[J].食品研究與開發,2020,396(23):
245-245.
[4]黃海龍,蘭婭勛.高校計算機教育教學課程改革研究——評《計算機教育教學課程研究與實踐》[J].林產工業,2020,v.57;No.341(09):110-110.
[5]楊海峰,蔡江輝,趙旭俊,等.新時期普通高校算法與數據結構課程教學靈魂理念——選擇與設計[J].高教學刊,2021,7(29):4.
[6]顏慧.基于新工科教育理念《數據結構與算法分析》課程教學改革與實踐[J].電腦知識與技術:學術版,2021,17(4):3.
[7]王蘭,李向前.基于獨立學院數據結構課程教學的應用型人才培養模式的研究[J].課程教育研究,2020,000(16):2.