【收藏】CSC大二選課攻略,能助你輕鬆選課的神仙秘笈長啥樣

2021-02-16 Easy Edu UTSG

前幾天我們為大二的小夥伴們帶來了CSC選課講座,但是不少小夥伴反應說想要一個更加詳細的課程介紹文字版本以便於收藏。

於是EZ4.0部門的導師們就為小夥伴們精心準備了這一份CSC大二選課攻略,大家快在選課來臨之前收藏起來吧!

希望這一份攻略能對你的選課有所幫助哦~

大二CS Programming必修課, 這門課首先會接觸新的程式語言Java, 並且通過Java這個語言, 系統的學習一個靜態類型的面向對象語言的各種feature. 

在這之後, 這門課會正式進入introduction to software

development. 從最基本的designing開始, 學習各種常見的software design pattern. 這門課同時會帶大家go over一些面向對象語言的principles, 以及一些常見的在寫code時的指導。

學期末期, 會接觸regular expression這個在工業領域很常用的technic。這門課對於已經到大二並且準備開始寫項目的小夥伴來說, 非常主要. 課程中會有一個大project, 佔這門課的主要分數. Project內容可能是desktop application 或者android application.

由於這門課的課程涉獵範圍非常廣, 內容非常細碎, 導致了這門課的學習進度非常的快, 十分的依靠學生的自學能力. 比如在最開始, 這門課沒有像大一學習Java的時候一點點帶小夥伴們go over每一個重點的syntax. 而是在PCRS上非常簡短intro後, 要求大家回答問題進行訓練。

同時Lecture上並不會對重點考點進行細緻的講解,比如學期中的Midterm (or quiz) 的考試, 其實有一個非常好用的固定套路, prof的課上並不會對這個技巧進行系統講解。後半學期的Project內容, 教授也不會細緻的講解一些在software development life cycle中重要的aspects, 只是給大家一個introduction, 然後要求大家自由發揮. 對於具體的application development, 如android平臺的開發, 課上也是非常淺顯的給了一些basic instructions。

總而言之, CSC207這門課, 是非常考驗學生自學能力的, 並且主要壓分項在於團隊project和個人assignment上。

課程均分為B左右,Midterm和Final的考試中, 我們有很多套路和技巧, 可以使周課學生拿到不錯的分數。但是如果沒有接觸到具體的解題技巧和成熟的知識體系梳理,考試中還是有非常多的陷阱和細碎知識點可以導致丟分的。

作業的難度主要在於instruction的不足, 需要學生進行大量的課外學習來了解作業的requirements,以及完成作業。

統計專業:STA247/STA257/STA237

計算機專業:CSC236/CSC258

數學專業:MAT235/MAT223/MAT224

Individual Assignment 

Group Project (in 2 phases) 

Quizzes 3 x 5%

Final Exam 

Paul Gries

CS專業老牌教授, 相信所有看過CSC108 PCRS的小夥伴都不會對他陌生的, 這位prof在CS教學領域有著極高的建樹, 授課風趣幽默而且非常認真負責。

他任教CSC207的時間不長,基本只出現在Fall Term, Paul的CSC207相對而言instructions明確,一般不會在marking中出現分歧或者錯誤。但同時, 對於Project中需要用到的android和desktop application, Paul同樣不會做豐富的講解.

 Lindsey Shorser

 已經持續在這門課上任教3年了. 好壞都在於她的懶. 課上幾乎沒有什麼幫助. Assignment handout經常delay, 導致了她經常要extend ddl。同時作業也經常出現instruction不清等問題. 好的部分在於, Lindsey的考試套路, individual assignment幾乎完全沒有變化。可以讓小夥伴們在這部分拿到不錯的分數。只是我們經常要去找她remark, 成功率極高,就是要等很久。

這門課程首先是學習了Java這個非常popular, 並且在職場被廣泛應用的語言。這門課程的topics非常的sexy,會讓學生接觸到很多的在職場中廣泛應用的topics. 只是由於課程設置上,並沒有對這些topics很practical的深入了解。

周課中會有很多的practical的例子和實用性的講解來幫助小夥伴們真正的接觸到introduction to software 

development.

1.Linux 入門(Basic shell commands)

2.C語言基本語法和邏輯(Basic C syntax)

3.System Call and Memory Model

4.多進程編程(fork)以及網絡編程(socket)

5.Shell Script

Shell, fork, socket

Linux 是一個Learning Curve比較大的工具,而209是第一門UofT CS學生接觸它的課程,所以上手可能會有點難度。Linux是由C語言編寫的,209大部分其實都是在講C,這裡由於學生已經有了108,148 Python,207Java的基礎,所以教授不會著重強調C語言的語法,而會focus在邏輯算法上。

這裡大部分學生覺得困難的兩個知識點是多進程編程(fork)以及網絡編程(socket),慶幸的是這兩個midterm都不會考,不幸的是兩者分別佔據了A3以及A4,Final中也會涉及到一部分,所以總共加起來大約40%的總成績。

Lab以及PCRS基本送分,Midterm佔百分比不高,主要難度在於A2、3、4以及final

上學期207,下學期209

其他內容相符CSC課程: CSC369, CSC367(難)

PCRS

Lab

A1

A2

Midterm

A3

A4

Final Exam

Note: You need to score at least a 40% on the final exam to pass the course.

Michelle Craig: PCRS製作人之一,教學經驗豐富,課程較難

Jennifer Campbell: 人非常nice,上課使用iPad Pro,筆記清楚且上傳至網站

另外還有:Karen Reid, Mark Kazakevich

CS Specialist進專業後的第一節必修課,競爭激烈,不能懈怠,且難度不小。為之後的CSC369打下基礎

繼續深入學習induction以及time complexity analysis。不僅在證明方法上會再介紹165沒有提到過的well ordering principle(這個知識點在MAT246也會講到,不過側重各有不同),很多問題也不再僅限於CSC165階段的iterative algorithm。

CSC236會介紹更多的算法分析所需要的手法以及帶同學們分析更多不同種類的algorithm。會接觸到correctness proofs for iterative and recursive algorithms。並且藉由recursive algorithms,會詳細講解recurrence equations and their solutions,探討是否有closed form和如果有closed form怎麼求解。

CSC236另外一個比較重要的也是課程收尾的知識點是automata and formal languages。

重點之一是recursive algorithm。很多知識點都是相關於recursive algorithm的。比如correctness proofs for recursive algorithm或者是recurrence equations and their solutions。

另外一個同學們會覺得比較陌生不太好理解的知識點是automata and formal languages,尤其是後者。不僅僅是因為形式和內容對同學們來說是比較新並且和其他知識點有相當區別的,而且有很多證明上的trick和手感需要反覆的練習,雖然說有模版可以套,但主體部分的完成仍然有一定難度。

CSC236每個assignment的均分一般都很高,通常八十分以上的均分是很正常的。Midterm均分相比於assignment會稍低一些,但通常也能夠在七十分左右。

Final難度會比之前的midterm有所提升,但總的來說並不會突然出現一個斷崖式的特別低的均分。整體來說CSC236的均分一般都不會太低,可以達到67%-72%左右

CSC: CSC207, CSC209

MAT: MAT223, MAT224, MAT235 OR MAT237

STA: (STA247, STA248) OR (STA257, STA261)

Assignments (3) 

Quizzes (9)

Term tests (2)

Final exam

Interaction and peer instruction

(bonus)

Nuances: The three assignments are worth, collectively, 21%, so we will weight your best piece 10%, your worst piece 4%, and your middling piece 7%. Your best term test will have weight 16% and your worst 8%.

Your best 3 quizzes will have a weight of 3% each, your next 3 best will have a weight of 2% each, whereas your worst 3 will have a weight of 1% each. 

No modification of the exam weight is possible: it will be 37% of your final grade, and you must achieve at least 40% of the possible marks on the exam in order to pass this course.

一般來說CSC236的師資力量都是比較令人滿意的,講解也比較細緻。Course coordinator常常會是下面這兩位prof之一:

Danny Heap: 非常和善可愛,通常會把所有課程資料整整齊齊放在course website上,並且會放出很詳細的annotated slides,但是Danny的書寫有的時候並不那麼容易辨認,所以建議同學們還是認認真真去課上自己做筆記。Danny出題一般比較中規中矩,有一定難度,但不會特意為難學生。他的CSC236常常會有一些interaction或者peer instruction的設置,給大家送一點bonus。

David Liu: 多大CS男神prof之一,並且相比較其他CS prof,在發量上具有絕對優勢。他對於課程的方方面面都有非常嚴謹周全的安排,講課也很生動幽默。David Liu常常喜歡不把課上說到的每一個觀點都仔仔細細地注釋在slides或者課堂筆記上,而是寫下key points輔以比較詳細的口頭講解或者實際demo。所以最好還是能去現場認真聽他的課。David Liu出題會有一定難度和思維量的,不過通常他的考試會一定程度把assignment作為一個很重要的source,也就是說他的考試題目的測試目的之一是看看同學們的assignment是不是自己認真完成並且弄懂了每一道題,並不只是靠隊友拿了一個高分。

對於後續數據結構和算法分析的學習,165的知識僅僅只是一個入門,而CSC236的概念性和證明手法在廣度和深度上都有了不小的提升。CSC236當中對於recursive algorithm的學習是非常有用的,好處之一是能幫助小夥伴們入門divide-and-conquer,這也是大家在CSC373通常會接觸到的第一個topic。CSC236不僅會繼續研究running time complexity,還會教同學們如何證明correctness。這樣可以大大幫助algorithm design以及pseudo code的書寫,避免盲目coding。

大二計算機半年課,課程被普遍認為是depressingly horrible, 主要是由於Lab部分難度相比課程而言跳躍過大,且花費時間過多(後期pre-lab幾乎是7-10小時一個)同時課程內容多且廣,從最底層的電路、Transistor,一直到circuit,device,FSM最後到CPU,邊邊角角有很多東西,極其容易迷失方向。Lab中我們需要使用一種語言叫Verilog, 個人認為這種語言在課程中的學習並不足以完成他規定的Lab, 這就是這門課神奇的地方,它Assume我們知道很多,但實際上,剛剛從165 148上來的大二學生是無法完全handle這樣的內容的。

上面也說到,主要是Lab的Pre-lab部分,需要在每周三個小時lab前完成,有時他lab的描述寫得十分晦澀、冗長,讀起來十分難受,儘管對於Pre-lab, lab TA給分還是不錯的。考試內容(如果是Steve  Engles教的話)很有套路可循,只要把他帶的年份的卷子都刷完即可,其實考試內容反反覆覆就那幾個知識點,他甚至有時會頻繁使用原題。

如果能把Lab全拿滿分(其中Lab6,7可以拿125%)midterm穩住,即可。就像之前說的,這門課如果是Steve帶,套路性很強。時間commitment :Pre-lab 7h + Lab 3h + lecture 3h + 複習 ?h (所以每周至少13h+) ,而周課中導師會帶大家過pre-lab的內容,所以可以減輕負擔。同時也會把零散在slides的知識點合併,並且輔以真題,針對性更強。

計算機:CSC209 (因為會設計一個共同知識點 pointer), CSC236(共同知識點FSM (Finite State Machine))

Labs:(7 total, 4% each)

Project:(2% proposal + three 4% demos)

Midterm exam:(closed-book)

Final exam:(also closed-book) ➔ you must get 40% on the final to pass the course

Regular Term: 這門課授課最多的coordinator就是Prof. Steve Engels,被學生公認為是CS系200level講課最好的教授之一 (我個人認為可以去掉「之一」),上課永遠保持微笑!且思路非常清晰順暢,從來不卡頓。他的考試套路非常清晰(2012,2013,2014,2015,2018都是他帶的),且題目會出得十分精簡:即,完全指向某個考點,絕不會拐彎抹角浪費時間。且他會頻繁使用原題,如果某次midterm他只給了部分年份的題目,沒有給答案,那你只要找到那些答案,刷了題,基本就穩了。2018年Fall時,甚至出現把2014年Final整張卷子抄下來給我們考的情況(連裡面的typo都錯的一模一樣)。其他會有一些不定期的教授,如Lim (一個韓國人,講課水平實在不行),以及一些ECE(電子工程)系的教授,不過他們都沒有Steve有經驗,也不如他教得好。

Summer: 這次的教授是Rabia Bakhteri,一個馬來西亞來的新教授,上學期和Steve搭檔教課,summer她獨自扛起整個258。她依舊沿用steve的風格,slides和lab全都照抄,一點不變,所以我認為套路和風格應該和Steve是持平的。往年Summer也不一定,會有一些流動教授。

 由於是必修躲不開,所以不喜歡也要上。不過另一方面說,他能夠增進我們對於計算機原理的理解:能知道CPU的原理,手機內存的原理,2進位的應用以及底層語言Assembly Language的使用,能讓我們「知其所以然」,對後面的計算機學習還是有幫助的。同時,如果是未來想向硬體方面發展的同學,這門課就十分重要了,相當於是硬體的職場啟蒙課。

大二CS算法必修課, 經過了一年半的的鋪墊, 我們在CSC263中終於正式進入了相對practical的算法學習。從這門課開始, 我們開始接觸不同的data structure以及通過這些data structure來解決實際的問題。課程主要介紹了CLRS中的一部分topics 如:AVL Tree, Heap,Graph等。

Graph是CSC263上非常重要的topic, 佔據了整個後半學期的學習,這個topic之後很多大三大四課程都有涉獵。同時這門課會學習一些analysis technics如average case analysis和amortize analysis等。在CS領域面試中, CSC263中的topic會佔很大比重。

這門課的對於不僅對之前的165和263中證明技巧以及邏輯功底有很高的要求,同時也要求了學生practical programming的熟練程度。這門課的每個topic都涉及到證明,以及算法構建兩個不同的分支,題型多變而且可考範圍非常廣。同時考試中題量非常的大,如果對知識的了解不夠全面,很有可能答不完卷子。課程中需要一定的統計課程知識,如sta247,sta257。如果學生對統計的內容掌握的不紮實,會在runtime analysis的topics 出現一定困難。

這門課的平均分在C+左右, 拿高分很難,主要難點在於高難度的考試,考試中對知識點的考察非常詳細,並且可以針對不同的lemma等等進行概念理解,算法構建的考察。考試中需要作答的內容很大,如果學生出現對一些考察知識點的不熟練可能會導致一整道答題的丟分。

統計專業:

STA248/STA238/STA261

計算機專業:

CSC209/CSC258/CSC343/CSC384

數學專業:

MAT235/MAT223/MAT224/MAT246

Homework:  (5×8% each)

Midterm: 

Final Exam: 

Sam Toueg

263的金牌教授,對這門課的理解非常高深,而且講課經驗豐富。Sam的課程講解非常精湛,同時課程內容十分豐富。Sam的課一定要去聽課,他不喜歡在網站上po課程資料,同時他也不會public他的往年past papers。(周課有)

作為最核心的算法課之一,這門課對後續很多大三大四課程的學習都非常重要,尤其是graph的學習,會在各個領域中都有常見的身影。

數據結構和算法的學習可以很大程度上訓練小夥伴們的coding能力,同時這門課作為interview當紅課程,學好這門課可以對之後找intern有很大助力。

SAS大禮包獨家放送,想要!趕緊!

Tableau學習資料大禮包等你來領!

免費Excel VBA大禮包只需戳下圖!

相關焦點

  • 《墨大最強選課秘笈》第一彈——排課!
    不管是剛入學墨大的小白還是大二大三的老油條首先要面對的都是選課現在距離22號開始的選課只有4天選課決定了你這學期作息時間、生活質量、開心程度決定了你大學成績、專業能力、畢業去向今天小航將陸續為大家帶來《墨大最強選課秘笈》
  • 華東師大年度最強選課攻略,幫你輕鬆選課
    又是一年選課時,聽說大家現在正為了選課「憂心忡忡」。別擔心,有學姐為你支招,年度最強選課攻略,你值得擁有。1.
  • 澳洲國立大學選課選課攻略
    選課攻略有哪些要注意?月和 7- 8 月,所以沒有固定的時間可以提供給學生,一般都是開學的時候,報到註冊然後在選課。  澳洲國立大學選課攻略  讀一個學位(degree)是分主修課(core course)和選修(electives)主修你是逃不掉的,而選修在你讀的課程要求裡會寫,可以從哪些專業裡選(一般是和你degree相關專業)這些課讀完一般都可以拿到一個類似副專業的提名(就是major啦)還有少部分選修是隨你選,可以跨專業。
  • 【選課秘笈】媽媽再也不用擔心我選課被坑了!
    但是大家準備考試之際,千萬別忘了另一項重要任務,那就是選課!!!選課選的好不一定下學期會過得舒舒服服,但是要是一不小心沒注意到選課中的坑,那可是一定不會舒服噠!那麼下面我們就來看看選課過程中如何避免各種各樣的坑!
  • 【新生選課攻略】@全體新生,就差到宿舍手把手教你選課了!
    初入民大不會選課?日常擔心沒有學上?收下這篇《新生攻略之如何選課》小塔來教你!選課期間,學校提供16號樓二樓(16-210、16-211、16-212、16-214等)多個公共機房供大家使用,具體操作流程如下~1.進入機房選擇任意一臺電腦開機,回車選擇第一個作業系統win7-1。
  • 嚮往的北師|選課攻略大全
    「孩子選課總不會,多半是選課攻略沒看會!」萌新們對選課是不是存在很多疑惑和不解呢,今天小編就帶你360度了解選課,趕緊將這份攻略收藏起來吧!✍🏻第一輪8月21日8:30—8月25日24:00,新生在校外選課。
  • 攻略 讓所有人大學子瘋狂的選課秘籍——四步教你搞定選課
    小編你知道嗎?快教教我!莫方莫方!讓小編來做你的神助攻!接下來的4個步驟教你輕鬆搞定選課流程,走上人生巔峰!(不會不要錢啊~~反正本來也不要錢吼吼~)(一切都要從本科教學手冊說起~)大家是不是還沒有認真看過本科教學手冊或是一翻開就被裡面的一個個大表格嚇壞了?沒關係,今天小編就以2015級新聞學院新聞傳播學類培養方案為例,為大家整理一下裡面的內容!
  • 遼寧大學新生攻略 | 選課篇
    並為有可能落選的課程排列1~2個備選課,以備在首選課程落選後,也能選擇到可接受範圍內的課程。在規定時間內登錄綜合教務管理網站,核查預選結果,對在預選中選課人數超過教室容量的課程進行抽籤確認;對於預選未超過教室容量的課程仍可以進行補選;對於已選中課程仍可以做刪除處理。
  • 【選課】14級新生選課攻略黃金版(研討課及通識課)
    自由選課是上海大學的特色之一,但請各位同學以理性選課為前提,結合自己的興趣與能力情況,切勿惟選課推薦為唯一標準,選出最適合自己的科目,為之後的專業分流做好準備。一直以來,經濟學院學生會始終以服務廣大學生為目標,此次的選課攻略,主要針對大一經管大類,我們力爭通過許多形式多樣、內容豐富的活動來帶給同學們多方面的幫助。希望此次的選課攻略能在一定程度上為同學們的選課提供有效的參考,衷心祝願大家選課順利!
  • 大二ECE選課攻略
    大一大二時,兩個專業的課程是完全相同的,注重學習電路知識、編程、硬體方面的基礎課程。臨近大三選課ddl,不知道你是不是有點懵逼,不知道該怎麼做出選擇呢?今天小編帶著學長學姐們的乾貨來幫助你啦!想必ECE大二的小夥伴都在這個假期對Magellan和選課有了或多或少的了解,有的可能已經基本排好了課,有的可能還在糾結應該怎麼選。
  • 選課秘笈:你不知道的冷門好課!
    小夥伴們,選課系統的速度是不是很讓人心塞啊,眼看著好課在刷新瞬間被搶走,心碎的感覺我們懂!科目:文獻檢索 上課套路:老師布置的作業很少很有用,會教你如何利用圖書館,知網,萬方數據,超星等查找文獻資料,上完這門課,其它各科凡有涉及論文寫作的文獻查找神馬的,就可以運用的輕鬆自如,寫論文就再也不用擔心找不到資料了。
  • A-Level選課?快收下這份超全選課攻略!
    不過,因為ALevel有超過70門課程可供學生選擇,而學生一般只要從中選擇3-4門課程,所以ALevel選課一直是一個大難點!但今天的ALevel選課小Tips,將包攬所有的選課經驗與心得。選課?參考這份文章就夠了!
  • 大一新生別迷茫,這份「選課攻略」建議收藏!
    因為大學很多事情都跟高中不同,除了必修課還有選修課,它們同樣計入總成績,不及格當掛科處理,所以選課就成為一件重要的事。大學選修課不會選?大一新生別迷茫,這份「選課攻略」建議收藏!1、選課的流程學校會提前發出通知,告知學生在幾號幾點開始搶課,並附上網址和選修課課程名單,意思是要大家做好準備。
  • 大學生選課有多難:哪一次選課,不是在拼命
    世界上最悲慘的事莫過於起早貪黑的熬過了期末考試,卻熬不過學校的選課系統。通常都是起了個大早,趕了個晚集。大學生選課到底有多難?>學校的選課系統就是壓在當代大學生心口的一塊大石,稍不注意就分分鐘讓你吐血而亡最近,@追風少年劉全有發了這樣一條微博當代大學生真是太慘了,連萬能的某寶也幫不了你們,拒絕的真果斷,一點情面都不留教務系統:你們儘管刷新,能進得去網頁算我輸
  • 【收藏-選課指南】UQ更新選課系統後,朋友圈一片哀嚎...
    有人跟我解釋一下這個這個百分比啥的,這個排序啥的到底是個什麼東西嘛??這UQ作也不是一天兩天了,在1年多-2年前還更新過圖書館訂房間的系統,那個時候就已經被學生們因為更新系統Diss的狗血淋頭了哈哈哈~那這個選課系統到底怎麼更新了呢?跟大班長來一步一步實操一下UQ這個新的選課模式吧~
  • 選課怎麼選——浙江「7選3」選課攻略
    新高考的省份,都需要選課。但具體怎麼選,怎樣的選課既適合學生,又可以在賦分中取得好成績,需要綜合考量。我們結合手頭數千例的諮詢、服務案例,提供一些經驗,供大家參考!像新增的熱門專業,例如人工智慧科學與技術、智能製造工程、人工智慧、數據科學與大數據技術、數字媒體技術等專業,都必須選考物理。所以,學生是需要結合自己以後打算報考的專業來選課的。也就是說,如果打算讀上表中的理工科,是需要考慮選考物理的。
  • BeTwin醬的新生選課大攻略!
    說完了基礎知識,那麼我們正式開始選課大攻略的教程吧~~ 首先讓我們登陸到選課的網頁,會出現下面的頁面 點擊右上角的로그인 如圖,在구분裡選擇 학부 수강신청 然後輸入你的學號和대학選項裡選擇 학부 (서울),水原校區的同學選擇학부(국제),然後按照圖片所示在개설학과裡選擇你所在的專業 (以酒店hospitaity為例)
  • 美高初選課全攻略 | 選課必讀
    每年的三四月是美國學生選下學年課程的季節,學生顧問(Student advisor)在老師的配合下將選課卡、學校課程目錄以及參考材料發到學生手中,學校課程目錄大多有兩三百門、十幾大類課程,學生根據必修學分要求、興趣所在、課程難度選擇課程,然後填寫選課卡,自己籤字,交父母籤字,提交學生顧問,完成選課。
  • 華農選課全攻略,祝你成功!
    一年一度的選(qiang)課即將開始啦!2、查看課程表,看看自己空餘時間的前後分別在哪個校區上課,確定每個空餘時間可以選擇的校區,晚上儘量選擇離自己宿舍區較近的課程。按照往年情況,五山和啟林區的課程競爭頗大,主校區比較冷門.3、瀏覽所有可選課程,優先考慮自己的興趣,將自己感興趣的課程列出來。4、向師兄師姐或在「選課利器」上了解課程的課堂點名、期末成績等情況。
  • 墨大選課攻略!手把手教你學會墨大選課系統!
    各位準墨大新生們集合啦!好不容易拿到了新鮮出爐的offer~可仍是暈頭轉向啊然後嘞?下一步該怎麼辦?就完事兒了?今天小編手把手帶你註冊~選課~排課表~完成開學前的最後衝刺!!了解完課程設置的詳細信息後,學生可以用自己的帳號密碼登陸My Unimelb,在Student Admin版塊裡,正式進行選課。