盧小杰 張 浩 葉明全 潘媛媛
(皖南醫學院醫學信息學院 健康大數據挖掘與應用研究中心,安徽 蕪湖 241002)
醫學信息專業是一門以信息科學和醫學為主的多學科交叉與融合的新興交叉性學科;是電子、計算機、通信、智能儀器、傳感檢測、醫學儀器及生物學、現代醫學等在生命科學中的應用與融合,該專業學生應具備較為系統的計算機知識和編程能力[1]。醫學信息專業結合信息科學和醫學,以智能醫療為培養方向,形成“人工智能+醫療”復合專業培養新模式[2]。“數據結構”課程是醫學信息專業重要的課程之一,是學生學習計算機算法的起步階段,本課程旨在培養學生的數據抽象能力,在理解各種數據結構的基礎上,掌握算法編程方法,為以后學習更深入的機器學習算法打好基礎。面向醫學信息專業學生,把數據結構算法思想可應用到實際系統開發中,如構建醫學信息系統、電子病例系統和醫學圖像處理和護士排班系統等。
醫學信息專業數據結構教學中目前存在的主要問題如下。
首先,C語言是在“數據結構”課程學習之前必須要掌握的計算機語言,C語言課時少、學生基礎較差、缺乏專業思想指導等因素造成學生對C語言的理解和認識都不足,學生編程基礎薄弱。要理解各種抽象的數據類型,需要具備算法分析和設計的能力。學生往往出現能夠理解算法思想,但其薄弱的編程能力不能轉化為具體的程序,更不會根據實際問題的特點來靈活運用“數據結構”課程知識。例如,常用知識點如結構體、指針、函數等,學生對此把握不足,直接造成了學生學習數據結構知識比較吃力,尤其對指針和結構體的理解應用欠缺,如鏈表的結構體和插入算法等[3]。
其次,“離散數學”知識學習不扎實,數理邏輯、圖論和組合優化思想欠缺,從而對數據結構知識不能全面地認知和科學地理解把握。如果能夠理解“離散數學”圖論知識,那么在學習樹和圖這兩章時就容易得多。
總之,由于先修課程不扎實,學生感到本課程難學,學習積極性受到阻礙,學習效果不好,出現厭學情緒。
實驗教學是高校專業課教學中的重要環節,實驗動手能力,解決問題、分析問題的能力是學生終身受益的基本功。但在“數據結構”課程的實際教學中,實驗教學出現一些不合理現象,如實驗項目驅同化、難度層次不明確、目標性不強和實驗考核方法不當等問題。
對實驗作業題目而言,目前,國內高校幾乎全部計算機相關專業都會開設“數據結構”課程,但實驗項目類似,鮮有創新,如二叉樹遍歷的實現,學生僅按照教材方法完成了靜態構造二叉樹遍歷的程序,缺乏創新和引申。在醫學高校中的授課過程也缺乏與醫學信息學科相關的附加性或引申性的實驗項目,缺乏專業特色。
實驗課考核方法是保障學生實驗教學質量的決定性因素,嚴肅實驗課考核可以督促學生學習理論知識,正向反饋課堂授課效果[4]。教師對實驗課考核不嚴謹、考核方法不當造成學生實驗課不認真、實驗效果不理想,從而達不到實驗的教學目的。在以往的實驗評定中,教師多以實驗報告來評定實驗成績,實驗報告存在大量抄襲現象,如果僅僅以實驗報告來評定實驗成績,并不能全面評判學生對知識的理解和把握,教師不能及時、準確、科學地把握授課效果。另外,大多數學生對實驗課不認真對待,完成實驗項目缺乏成就感和目標性,實驗課上出現紀律混亂,增加教師的管理難度。
醫學信息專業是計算機科學、醫學、信息科學交叉融合的專業,教師自身的專業背景和指導思想不同,即計算機專業教師、醫學專業教師和電子信息專業教師在專業背景上各具特色,學科壁壘在授課過程中突顯,從而造成同學對課程體系設置不理解,專業向心力不強,專業思想不穩定的不良后果。
在“數據結構”課程教學中,作為醫學信息專業的核心課程應把交叉專業的思想融會貫通,加強專業之間的融合。
C語言作為“數據結構”課程的重要先修知識,考慮到學生基礎,可用兩個學時來復習C語言的重難點,尤其是指針、結構體、參數傳遞等知識點,壓縮“數據結構”課程第一章節緒論內容,只強調數據結構的發展歷史、重要性、使用場合、算法復雜度等問題。在進入后面章節的教學時,關于程序部分可進行適當提及C語言的知識點。另外,對“離散數學”課程的復習可以選擇性地融合到樹和圖的章節中。鞏固先修課程,引入新課程,使學生逐步接受“數據結構”課程新知識的學習。課后,教師可利用現代通訊手段增加答疑環節,如微信、QQ作業等,利用碎片化學習時間來貼近學生日常學習生活。
實驗課用布置作業和計成績的方法,并把每次實驗成績匯總計入總評成績中,設計層次實驗模型和相應的考核方式,有層次的教學方式可以做到因材施教,區分學生層次提高學生做實驗的興趣。例如,“鏈表”的層次實驗及考核,如表1所示。

表1 層次實驗實例和考核方法
經過調查和實際推行,這種層次實驗模型和考核方式具有可行性。另外,為了減輕教師實驗考核負擔,可以在實驗室安裝代碼測試工具軟件,讓學生自測自評,教師負責最后打分。
對于交叉專業的授課,教師自身應改變思維方式,不僅要求教師在授課舉例上與醫學信息學科相結合,更應該在實踐上讓學生得到鍛煉。課程設計是目前高校中常用的一種實踐教學方法,是項目驅動法的重要體現,項目驅動法是理論知識和專業實踐技能相結合的一種教學方法,使學生全面地掌握理論思想、設計方法、需求分析、可行性和專業技術。目前,在“數據結構”課程的項目驅動教學方法中,多半是以計算機專業的課程設計為主要導向,課程設計題目也多以計算機專業為主,缺乏學科針對性[5]。本文采用具有與醫學信息學科相關性的項目,從課程設計題目上以醫療系統開發和醫用信息技術作為主要方向。
1.HIS系統開發中的應用
樹型結構是一種常見的非線性數據結構[6],在HIS(Hospital Information System)系統中,不同的醫院部門科室、醫院管理體系結構上需使用樹型結構設計[7]。設計HIS網頁界面的樹型菜單,把不同的科室作為樹的節點,結合HTML5、JavaScript、DIV+CSS3技術編寫頁面程序,數據庫實體關系的建立也以樹型結構進行,同時不同部門在構造、查詢等操作也是樹型結構進行。
2.電子病歷系統中的應用
目前,國際上存在若干種病歷數據表達格式,如臨床文檔體系結構(Clinical Document Architecture, CDA)[8]、網絡社區的電子病歷技術規范open EHR[9]、數字成像和醫療通信的結構化(Digital Imaging and Communications in Medicine,DICOM)[10]等。其中,醫學圖像和傳輸采用XML格式的DICOM文件,解析后可在普通瀏覽器上直接查看醫學圖像信息。數據結構的線性結構和樹型結構被引入到DICOM文件中,如圖1所示。

圖1 DICOM的樹型數據結構
數據結構算法思想使DICOM的信息對象和數據元素之間的嵌套和依賴關系更加清晰,解析更加方便快捷。
3.醫學圖像處理中的應用
智能醫療與語音、 圖像、 文字結合,將推動工科人才培養向類人化目標轉變,“數據結構”為醫學圖像的壓縮、增強、邊緣提取、分割及識別做好基本的數據模型,是對醫學圖像的分類、智能診斷和預測等研究的基礎工作。采用鏈表技術,對醫學圖像的每一個像素點進行統計。其鏈式存儲結構,如圖2所示。

圖2 圖像像素鏈表示意圖
其中red、blue、green為紅藍綠三基色,count為像素出現的次數,head1和rear1分別為該像素出現的位置鏈隊中的首位指針,head2為指向統計該元素在圖像中出現的間距的鏈表的頭指針,next為下一個節點的指針。hangl和liel為該像素出現在圖像中的行列坐標,hangz和lie2為該位置距離該像素前一次出現位置的相對距離。定義像素鏈表后可對像素進行排序操作,利用鏈表知識來完成醫學圖像特征的初步統計。
4.護士排班系統中的應用
排班是護士站的一項常規工作,目的是提高護士在班時間的利用率,有效利用醫院護理資源。傳統的排班方式無法結合邏輯算法,其按職、按功能制排班的方式不能有效地利用人力資源、調動醫護人員的工作積極性,排班模式單一,探尋一種合理的護理排班算法模式是非常必要的。結合實際需求,在學生課程設計中結合數據結構算法設計出一種合理的排班方式。
護士排班表用數組表示,采用動態隊列管理進行排班。設計簡單的排班模型,例如,某護士站有20名護士值夜班,每月工作30天,要求至少每次有兩人值班。定義隊列結構如下[11]:
struct SqQueue{
QElemeType *elem;
Int front,rear;
Int queuesize,increment;
};
設計成30個空間大小的循環隊列,以此進行插入和刪除的隊列運算,完成排班的模擬。通過這種排班方式的練習,培養學生在以后醫院管理工作中的科學的決策方式。當然,對于層次較高的學生,可進一步研究蟻群算法、模擬退火算法、變鄰域搜索算法等算法在護士排班中應用的課題,分化出研究型學習的學生。
以上數據結構理論與實際醫學信息系統應用相結合能夠讓學生融合概念和原理,達到以項目驅動教學、以實踐反饋原理的目的,讓醫學信息專業的學生能夠發揮專業特長。
以皖南醫學院為試點,對醫學信息專業的數據結構課程實行教學改革。連續三年的期末考試成績用spass22.0分析,得出期末成績比較結果,如表2所示。

表2 期末成績對比表
由表2可以看出,經過教學改革方法嘗試的班級成績要相應提高,并且學生期末成績在顯著水平a=0.01下服從正態分布。
“數據結構”課程在醫學信息專業人才培養過程中具有非常重要的地位,通過成績結果顯示:此教改方法具有可行性,值得推廣。此教改方案不僅可以增強了學生分析問題、解決問題的能力,還可以通過項目訓練,培養學生的專業認知能力、團隊精神和責任心。
此類教學方法初見成效,可以推廣到其他新工科建設模式中去,在專業改革中實踐,經過不斷完善,形成專業風格,培養出有特色、有競爭力的醫學信息專業學生[12]。新時期,醫學信息學的發展應該更加密切關注人工智能的后續發展,借助人工智能發展的歷史性機遇促進智能醫療建設取得新的更大的成功。