你好,我在滑鐵盧,過(guò)幾天CS136這門課要考試,想問(wèn)一下我應(yīng)該重點(diǎn)復(fù)習(xí)什么?麻煩老師幫忙總結(jié)我們要考的內(nèi)容,然后能指導(dǎo)我備考,謝謝了。
滑鐵盧大學(xué)的CS136(基礎(chǔ)算法設(shè)計(jì)與數(shù)據(jù)抽象)課程基于在CS135中學(xué)習(xí)的技術(shù)和模式,同時(shí)延伸到使用命令式語(yǔ)言。課程介紹了算法的設(shè)計(jì)與分析、信息管理以及實(shí)現(xiàn)過(guò)程中所需的編程機(jī)制和方法。討論的主題包括迭代和遞歸排序算法,列表、棧、隊(duì)列、樹及其應(yīng)用,以及抽象數(shù)據(jù)類型及其實(shí)現(xiàn)。以下是針對(duì)CS136考試所總結(jié)的復(fù)習(xí)重點(diǎn),希望能幫助你充分備考。
一、考前復(fù)習(xí)重點(diǎn)
1、變異、交互與封裝
Scheme中標(biāo)識(shí)符與值的綁定變異。語(yǔ)句的執(zhí)行順序。Scheme中的基本輸入輸出。狀態(tài)封裝(原始對(duì)象)。Scheme中結(jié)構(gòu)與列表變異的語(yǔ)義。Box-and-pointer圖。
2、內(nèi)存模型與C語(yǔ)言
內(nèi)存模型。C 中的變量聲明、賦值和中綴表達(dá)式。C 中的基本輸入/輸出。編譯。Scheme 中的指針、地址、垃圾回收和內(nèi)存復(fù)用。在 C 中建模函數(shù)、過(guò)程和遞歸。C 中遞歸的限制。循環(huán)結(jié)構(gòu)。
3、效率
O 表示法。Scheme 和 C 中簡(jiǎn)單程序的分析。對(duì)數(shù)時(shí)間復(fù)雜度的列表操作。Scheme 和 C 中的向量/數(shù)組及其應(yīng)用。線性搜索和二分搜索。哈希表及其應(yīng)用。C 中的指針和字符串。
4、內(nèi)存管理
C語(yǔ)言結(jié)構(gòu)。內(nèi)存分配與釋放。C 中的列表與隊(duì)列。安全性和可用性問(wèn)題。
5、抽象數(shù)據(jù)類型
Scheme中的信息隱藏。模塊系統(tǒng)。庫(kù)。抽象數(shù)據(jù)類型的定義與實(shí)現(xiàn)。C中的獨(dú)立編譯。其他語(yǔ)言(Java、C++、ML、Haskell)中的抽象與代碼復(fù)用方法。
6、計(jì)算機(jī)科學(xué)史
本課程所涵蓋概念的歷史發(fā)展。
二、考前復(fù)習(xí)目標(biāo)
在考試之前,你應(yīng)該通過(guò)復(fù)習(xí)能夠:
1、編寫設(shè)計(jì)合理、格式規(guī)范、文檔齊全且經(jīng)過(guò)測(cè)試的中等規(guī)模程序(200 行),能夠使用基本輸入輸出。
2、有效運(yùn)用命令式編程范式(如變量修改、迭代)。
3、解釋并演示 C 語(yǔ)言內(nèi)存模型,包括內(nèi)存的顯式分配與釋放。
4、解釋并演示模塊化與抽象化的基本原理。
5、實(shí)現(xiàn)、使用并比較基本數(shù)據(jù)結(jié)構(gòu)(結(jié)構(gòu)、數(shù)組、列表和樹)及抽象數(shù)據(jù)類型集合(棧、隊(duì)列、序列、集合、字典)。
6、分析算法實(shí)現(xiàn)的效率。
以上就是你在CS136考試之前應(yīng)該著重復(fù)習(xí)的內(nèi)容。如果你在復(fù)習(xí)過(guò)程中遇到問(wèn)題,可以立即聯(lián)系考而思的課程顧問(wèn),以獲得有針對(duì)性的滑鐵盧大學(xué)考前輔導(dǎo)。通過(guò)輔導(dǎo),你將充分掌握考試重點(diǎn)、及時(shí)進(jìn)行查漏補(bǔ)缺、不斷提升應(yīng)試能力,從而在考試中有更好的表現(xiàn)。