不靠電腦打字真的能弄懂代碼嗎? 我不知道,當今晚決心奮戰補習第七章的圖時,學領接矩陣矩陣和領接表的代碼時我雖然已經弄懂了圖轉換成鄰接矩陣和鄰接表是什么樣的(同時證明用習題來學習比單純看書更高效),但是看到它的代碼部分時我還是一臉懵逼, 大學給的《資料結構C語言實作》代碼可讀性極差,也不能上機照敲,于是我就用《大話資料結構》去自學,由于所看自學書是電子書的關系,我很難,也懶得在上面批注,同時由于閱讀媒介的特殊也相對有些抵觸心理,比如看電子書相比看紙質書就更不想去抄圖;而且也不可能進行跨頁的瀏覽,也就是說,如果結構圖在287頁而代碼描述在291頁,我就是反復的滑滾輪也不能把兩頁的內容很塊地聯系起來,而紙質書我只要伸個胳膊卡住就能同時看了, 我想,針對ADT的樣式和介紹的學習僅需書紙筆外加習題就能完成,但是演算法隨著ADT復雜度的增加僅憑線下的作業是不能理解清演算法思想的,那個領接矩陣的實作代碼在我照著自學書的原始碼照敲了一遍以后,便豁然開朗了, 學到現在,我感覺資料結構大體分為兩個部分:概念闡述和演算法實作,相比概念,演算法實作的學習最后必須依靠線上,所花的時間成本也遠大于概念學習,我覺得像老師那樣把代碼放在幻燈片上細講的做法純粹在浪費時間,因為放映的都是某部分功能而不是整套演算法,學的時候很難把眼前演算法里的一些變數跟最上面的typedef的各種屬性聯系起來,再聯系到結構圖例以弄清楚是講了什么,課上先講的ADT在腦子里記不住,老師就就跳轉到演算法上去了,最后導致盡管看懂了概念,看代碼卻依然如天書一般,看不到最后的輸出(既背后的資料結構整個操作的程序), 但是弄懂代碼的"輸入"一定就是用電腦把整章程式都敲出來嗎?我不知道,反正我從來就沒有從老師在課上的講解或者上機后不敲代碼,直接除錯書本原始碼的程序中弄懂過對應的演算法,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/219279.html
標籤:其他
