離五月的日子越近,就越想要打醒一月報名時信心膨脹的自己。
隨著考試在國內(nèi)的普及率越來越高,越來越多的出國黨也開始不僅把眼光放在托福和SAT的考試上,而是挑戰(zhàn)更高的難度的。
今天,小編將為大家?guī)鞢omputer Science A考試分享
考試介紹
與大多數(shù)其他考試類似, CS A分為兩個部分:
Section I:
Multiple Choice Question [1 hour and 30 minutes for 40 multiple-choice questions]
Section II:
Free-Response Question [1 hour and 30 minutes for 4 problems involving extended reasoning]
Section I的選擇題就不多說,Section II的FRQ一般是讓我們補充完整類的方法。
技能點分析
在對 Course Description的Section I樣題分析可以得出如下常見技能點考察:
1. 對程序運行效果的分析(比如哪幾個可以給出這個答案、這段程序會輸出什么、運行了程序之后variable會變?yōu)槭裁?,題目1、2、3、4、5、8、9、10、13、14、15、16、18、19、20、24考察此項技能)
2. 錯誤分析和改正(題目原意是如此,然后接著下面函數(shù)哪個能達到目的、為什么這段程序不能達到目標,如何達到目標,題目11、12、23、25考察此項技能)
3. 面向?qū)ο蟪绦蛟O(shè)計(主要是考如何把事物抽象成計算機的方式來描述,題目6、7、22考察此項技能)
4. 程序運行效率、代碼的最佳位置等其他題(題目17、21考察此項技能)
考點分析
編程所用的語言是Java,一門經(jīng)典的面向?qū)ο缶幊陶Z言,主要要求我們掌握如何才能用對象的思維抽象問題,如把一個棋盤抽象成二維數(shù)組;二是如何才能使用算法用抽象的內(nèi)容來進行各種操作(題目可能會給出抽象好的內(nèi)容,如變量定義,讓我們完善一個類的方法)。
以下的考試內(nèi)容供大家參照初步了解計算機科學(xué)A的具體要求:
I. Object-Oriented Program Design 面向?qū)ο缶幊?/p>
1. 我們需要明白如何用計算機的方式來看待問題
2. 需要明白怎么把現(xiàn)實生活中的數(shù)據(jù)用計算機的方式描述
3. 我們要知道類和接口的特點以及兩種關(guān)系(“is-a”是繼承關(guān)系,“has-a”是組成關(guān)系)
4. 明白code reuse和code overload這兩種易混淆的概念
5. 需要明白數(shù)據(jù)呈現(xiàn)形式和算法實現(xiàn)形式
6. 需要明白如何把操作分解,簡單地說就是把一個操作變?yōu)楹芏嘧硬僮?/p>
II. Program Implementation
A. 程序的實現(xiàn)方法(這里面的內(nèi)容巴朗講得很清楚,還有生動形象的例子)
1.Top-down 從上到下
2. Bottom-up 從下到上
3. Object-oriented 面向?qū)ο笫?/p>
4. Encapsulation and information hiding 把一定對象封包和隱藏信息
5. Procedural abstraction 過程抽象
B. 程序結(jié)構(gòu)
1.知道primitive types和reference types的特點和區(qū)別
2.知道常量、變量、方法及其參數(shù)、類、接口的定義和應(yīng)用(這個及其重要,例如要學(xué)會如何使用extend、implement來創(chuàng)建子類和實現(xiàn)接口)
3.知道如何使用System.out.print、System.out.println輸出數(shù)據(jù)(或其他有特殊說明的輸出方式)
4.學(xué)會如何調(diào)用方法、如何順序執(zhí)行和條件執(zhí)行、循環(huán)遍歷、遞歸
5.知道數(shù)字的表達式、字符串表達式和布爾表達式的計算
C. AP要求的Java類(String等里面的方法和參數(shù)需要記憶,考過很多次)
III. 程序分析
A. 測試
1. test case的開發(fā)(包括boundary case,巴朗有詳細說明測試數(shù)據(jù)的選?。?/p>
2. 單元測試
3. 整體測試
B. 調(diào)試
1. 要知道不同分類的錯誤,compile-time error,run-time error和logic error
2. 錯誤的辨別和改正
3. 如何使用調(diào)試器、添加輸出語句或手動跟蹤代碼
C. 運行出的exceptions
D. 程序更正
1. 前提條件和后來條件(就是執(zhí)行前需要什么,執(zhí)行后會是什么)
2. 斷言
E. 算法分析
1. 要會分析出語句執(zhí)行次數(shù)
2. 要會大體比較運行的時間(一般雙方所用的時間和效率會差距很大)
F. 要學(xué)會用不同進制表示一個非負數(shù),還要知道整數(shù)的最大最小限制
integer.MAX_VALUE和integer.MIN_VALUE,知道計算機儲存數(shù)的方式,如整數(shù)的最高位是用來判斷正負的。
這里需要注意:不是最高位從0變?yōu)?就變成相反數(shù)了 。
IV. 標準數(shù)據(jù)結(jié)構(gòu)(如何把題目的概念抽象成數(shù)據(jù)等)
A. 前面說的primitive data types如int, boolean, double
B. 字符串
C. 類
D. List
E. 一維和二維數(shù)組
V. 標準操作和算法
A. 數(shù)據(jù)結(jié)構(gòu)操作,如截斷、添加、刪除
B. 順序搜索和二叉樹搜索
推薦參考書
巴朗AP 計算機科學(xué)A
如果你的時間充裕而且有一定的計算機編程基礎(chǔ)知識,推薦用巴朗AP 計算機科學(xué)A來做第一次閱讀和做練習,它的優(yōu)點在于把概念寫得很完整很詳細。
上面的考綱的內(nèi)容巴朗里都基本都有詳細介紹。
里面的題目也都很不錯,選擇題和大題都很適合練習和???,引進版的巴朗還配有中英目錄翻譯,對專有名詞的理解還是很有幫助的。
不過其中的內(nèi)容有點超綱,而且介紹的內(nèi)容過于復(fù)雜(例如第一章出現(xiàn)的package基本都不考),不適合復(fù)習的時候使用。
內(nèi)容的排序也要求讀者有一定的計算機編程基礎(chǔ),不然很容易被繞暈,也不太適合新手入門。
程譜CodeRecipe
如果你覺得自己理解不了巴朗的英文描述和比較有挑戰(zhàn)性的編排體系,或者是已經(jīng)到了不足一個月的緊要關(guān)頭還覺得自己有知識空缺,推薦一個專門做計算機教程的公眾號:程譜CodeRecipe,里面專門為AP設(shè)計的知識樹體系,而且語言比較活潑好理解。
如果是還沒有對AP CS A有一個完整的理解(比如認真讀過一遍參考書或者跟著老師上過一遍課),那么可以直接學(xué)習整個AP CS A知識樹。
如果你只是想要差缺補漏(比如看書做題的時候發(fā)現(xiàn)了沒有理解的知識點),可以去看程譜的抱佛腳知識樹,里面有對知識點的完整梳理而且每一個知識點都鏈接到教程原文,做得很完善。
當然如果用中文教程學(xué)AP的話,那么教程括號里的英文單詞也是需要掌握的(AP CS A不需要寫文章,因此會認即可)。
電腦可能看公眾號不太方便,也直接登錄官網(wǎng)看: https://coderecipe.cn
最后一個月簡單規(guī)劃
大家可以把參考書看一遍,之后再來看看這篇文章,過一遍考點分析和知識點梳理,確定內(nèi)容中沒有不會的知識之后就可以開始練題了,如果有不會的知識的話,可以程譜參考手冊中直接查理解一下。
對于往年的選擇題官網(wǎng)基本沒有放出,Course Description里面有一套參考題,推薦大家作為考前訓(xùn)練用,當然也可以做做練手,其他時候考前有時間的話每天一套參考書的選擇題來防止知識的遺忘。
對于FRQ問答題,建議大家練習時拿HB鉛筆(到時候會要求用鉛筆寫而不是水筆)和橡皮自己計時完成,一套題大概留出15分鐘左右的時間,最后可以重新讀一下題和自己的答案試著用參考數(shù)據(jù)模擬運行一下,看一看結(jié)果是不是和參考相同。
題目內(nèi)容優(yōu)先練2014年以后的年的官方問答題,實在不夠再練參考書的。
一開始寫出的程序和參考答案不像不要緊,盡量靠近就好了,但參考答案上的算法一般效率都會比較高,而自己寫的可能存在一些運行的問題或效率低。
(當然高手們練到后期會發(fā)現(xiàn)自己寫的答案比參考效率還要高,那就另當別論,不過建議考試和練習的時候不要炫技,分數(shù)要緊,最好穩(wěn)扎穩(wěn)打,不然老師要是看不懂或者自己寫錯某個步驟就不太好了)
跟我一起劃非重點
看了那么多內(nèi)容,你是不是覺得超累。
接下來讓我們來放輕松,劃一劃非重點。
因為近年來AP計算機科學(xué)一直在刪減內(nèi)容,有一些內(nèi)容已經(jīng)不要了,做往年卷子時可能會遇到,這些題可以直接跳過:
GridWorld Case Study(在前年的卷子中開始消失,在這之前的卷子每套一般會有一個大題考這個,當時我還問了深圳的老師,得到消息說不考了后就只是嘗試著寫一寫,被換成了三個labs)
instanceOf 這個以前在標準答案中出現(xiàn)過,現(xiàn)在Course Description中的描述是not tested in the exam but potentially relevant/useful三個labs (The Magpie Lab, The Elevens Lab, The Picture Lab,在巴朗的計算機科學(xué)的書里面有,但是現(xiàn)在的描述是optional and are not tested on
the exam,對于這些labs,只需知道內(nèi)容和其中面向?qū)ο缶幊谈拍罹秃茫└嗪擦謹?shù)學(xué)國際課程介紹
以上就是關(guān)于【AP考前1月復(fù)習救命稻草系列】的解答,如需了解學(xué)校/賽事/課程動態(tài),可至翰林教育官網(wǎng)獲取更多信息。
往期文章閱讀推薦:
??2027年QS世界大學(xué)排名發(fā)布!MIT連續(xù)15年蟬聯(lián)榜首,清北躋身前15!
清華第6!2027 U.S. News全球最佳大學(xué)排名發(fā)布,藤校集體遇冷?

? 2026. All Rights Reserved. 滬ICP備2023009024號-1