Re: [問題] 請教一下關於學校考試
技術人可能會認為什麼叫做強呢? 給你一個比較難的題目,你能立刻想出解法,
並且也能立刻寫成程式碼. 並且同時,對於其他相對簡單的題目,是不屑一顧.
像你這例子,很多強者可能都遭遇過. 一方面自我衡量實力之強度,另一方面則是
學校環境是有很多周遭人的觀感可能誤導你,或許使你鬆懈,也或許會使你看透.
面對那些擁護者,你會得到一種說不上來的印象,說是成就感卻還沒有成就任何事情.
我覺得你所問的事情,細分為下列面向:
1. 考試題目(如質數)在學術上的難度: 例如,想要找雙聲質數,你能不能理解
這個問題的定義,或者說,你能不能用有效的數學語言描述這個問題?
你怎麼知道測 i, i+2 是否為雙生質數即可? 因為 i, i+2 且 i 為質數
的集合確實包含了所有的雙生質數.
2. 看到考試題目,建立出對應的程式架構的準確度: 例如雙生質數的標準答案,
你怎麼知道只用迴圈測 i, i+2 是否為雙生質數即可?
因為你知道迴圈是窮舉一個集合的所有情況;
因為你知道在迴圈針對 i, i+2 放一個判斷式,可以只處理 i, i+2 且 i為質數
的集合.
3. 架構程式的速度: 原本以為是心底有整套程式的全貌,然後照抄到編輯器,
但其實很多人寫程式的方法應該是步步為營. 當你寫一行程式不確定它的
效果時,你不會想要寫下一行程式,因為你知道這一行程式會覺得下一行該
怎麼寫. 速度上來講,如果是照抄心底的程式碼,速度很快,O(n); 如果是
"寫-debug-改-debug-改-debug-..." 這種方法,速度可能是 O(n^2).
那你就知道有一種比較好的方法是讓速度變成O(log n),就是divide and
conquar. 當你不知道程式全貌但是知道怎麼求雙生質數時,請你先寫一個
method 只求出一對合理的雙生質數.
4. 對程式架構的熟悉度: 看到一個題目,不要思考問題,你能不能只憑一開始的印象
想到這個程式大概會寫成多少層迴圈? 這種能力,有一部份來自你的記憶力,
記憶你曾經寫過的程式,另一部份來自你從問題描述中得到的印象,大略知道
這個問題劃分為多少層次.
很多人說要學會程式就是多寫就好. 那麼,粗略統計一下,在你練習的經驗中,
九九乘法表寫過幾次?
任何一種排序法寫過幾次?
另外,許多常見的練習題,你寫過十次以上之後,是
在下一次仍調閱第一次的寫作經驗,而導致回憶速度之慢?
或者是每次都重新寫起,而導致寫作速度像摸索一樣快慢?
或者是能夠在經過多次經驗之後,運用你目前最新的認知及知識背景,大破大立,
寫出全新的程式,即使那全新的程式架構長得跟你第一次寫程式的一模一樣?
言歸正傳,學校程式課的上機考試是類似軟體工業上面的標準,就是要衡量你懂但是
你做得快不快,你做得快但是你做得對不對之類的水準. 你還在學校時,實際情況是
學習經驗不多,就先不要接受學校同儕如何視你為強者的觀點. 人家看你為強者,
可能是有求於你,可能是因為你有一點努力而他沒有努力而已. 但如果因為這一點點
感受而影響你的學習態度,變成沒有做相當多的努力卻期待考試寫程式的速度無條件地
變快,那可能只是在沙地上築高台,地基不穩.
※ 引述《ek0424 (Q毛)》之銘言:
: ※ 引述《ek0424 (Q毛)》之銘言:
: : 小弟現在是大學的資管系學生
: : 目前程設學了java 雖然不會被當
: : 可是常常考試的時候想不出來 而且coding速度很慢 每次都覺得時間不夠
: : 平常以班上的同學來說 我的練習時間不輸給大部分的人
: : 平常老師給的題庫或是作業我都有寫
: : 而且常常有很難的作業我都會把他想出來
: : 因此大家常常覺得我很強
: : 但是考試的時候 我卻常常出乎大家意料之外
: 像是這種題目:
: 1.(質數測試) 請依序撰寫如下兩種質數測試方法及測試主程式:
: a.public static boolean prime(int n)
: 若正數n為質數則回傳真,否則回傳假
: 提示:若2到n/2的整數m皆無法整除n,則n為質數.
: 其中,m整除n寫法如下
: if(n % m == 0)
: b.public static boolean twinPrime(int n, int m)
: 若正數n,m差2,而且n,m皆質數,則n,m為雙生質數,回傳真,否則回傳假
: c.主程式測試時請印出小於100之質數,及雙生質數.
: 像是這種題目我大概都考試的時候會想得很零散
: 老師會部分給分 所以都還是我拿一些分數
: 可是我考試幾乎沒有那種整大題都run出來過的
: 一直以來都靠部分給分 很羨慕那種可以寫出整過能run的人
: 想問有甚麼方法可以幫助我非常清楚題目的架構 然後寫起來不會太亂
: 我常常都東寫一點 然後西試一下 只要不能run馬上又打別的寫法
: 每次都debug很久 可是如果不考是我都可以很冷靜的寫出來(可是時間很長)
--
/yau
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.231.65.21
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 3 篇):
Programming 近期熱門文章
PTT數位生活區 即時熱門文章