程序岁歉、競賽與算法

《程序得运、競賽與算法》是老文章,里面講的內(nèi)容基本過時锅移,沒有什么意思熔掺。重新放出來是希望大家記得,在我們的CS學(xué)院非剃,ACM競賽是很牛逼的事情置逻。--作者注


2013年左右,筆者抽空關(guān)注了一下某些程序設(shè)計(jì)競賽的書备绽。我是競賽盲券坞,沒有參加過任何程序競賽,不過我就喜歡折騰肺素、瞎想恨锚,順便也與幾位搞過ACM競賽的同學(xué)探討相關(guān)問題。

首先压怠,我找來某同學(xué)推薦的《挑戰(zhàn)程序設(shè)計(jì)競賽(第2版)》( 作者: 秋葉拓哉 / 巖田陽一 / 北川宜稔 出版社: 人民郵電出版社 譯者: 巫澤俊 / 莊俊元 / 李津羽 出版年: 2013-6)翻看了一下眠冈,挺有意思。加上我之前買的劉汝佳的幾本競賽書菌瘫,我對程序競賽有了一點(diǎn)點(diǎn)認(rèn)識蜗顽。我就想,一本講競賽的書與一本算法書有什么區(qū)別呢雨让?比如雇盖,《算法導(dǎo)論》?

挑戰(zhàn)程序設(shè)計(jì)競賽(第2版)

然后主要是針對《挑戰(zhàn)程序設(shè)計(jì)競賽》和《算法導(dǎo)論》進(jìn)行了一些比較栖忠。我發(fā)現(xiàn)崔挖,從內(nèi)容的組織上它們有非常類似之處:從基本的數(shù)據(jù)結(jié)構(gòu)出發(fā)(堆、棧庵寞、樹狸相、圖),講解一些基本的算法捐川,然后貪心法脓鹃、回溯法,進(jìn)而動態(tài)規(guī)劃古沥,網(wǎng)絡(luò)流瘸右,計(jì)算幾何娇跟,再加上一些數(shù)學(xué)知識,主要以數(shù)論太颤、組合數(shù)學(xué)為主的知識苞俘。盡管類似,但是又有非常明顯的區(qū)別龄章。(《數(shù)據(jù)結(jié)構(gòu)》吃谣、數(shù)論、概率等本身就獨(dú)立成課瓦堵,使得分析下去會更復(fù)雜基协。《算法導(dǎo)論》有數(shù)據(jù)結(jié)構(gòu)的內(nèi)容菇用,但顯然這部分內(nèi)容并非必須澜驮。)

主要體現(xiàn)在纵朋,競賽書的講解主要針對特定的題目释树,強(qiáng)調(diào)技巧和程序。算法書針對已知問題(難題)猜敢,強(qiáng)調(diào)準(zhǔn)確性卦绣、系統(tǒng)性和通用性耐量。我列表如下,其中有些結(jié)論我心目中不是那么武斷滤港,只是寫下來就成了這個樣子廊蜒,大家可以探討:

           目標(biāo)       系統(tǒng)性  理論性  技巧性   關(guān)注點(diǎn)    趣味性  學(xué)習(xí)要求
 算法學(xué)習(xí): 學(xué)科訓(xùn)練     強(qiáng)      強(qiáng)     較弱    通用難題   較弱      高
 ACM競賽: 比賽        較弱     弱     強(qiáng)      特定問題   強(qiáng)        高

注:難題,我指的是理論上準(zhǔn)確定義的無高效算法的那一類問題溅漾。有了準(zhǔn)確定義之后山叮,世界上就只有一種難題。特定問題添履,我想說屁倔,它們是被設(shè)計(jì)出來而且必然有答案的“玩具”題,對很多人也許很難暮胧,但本質(zhì)上一定是“容易”的問題锐借。

以上比較還沒涉及另一個關(guān)鍵詞:程序。競賽培訓(xùn)書都會講一點(diǎn)編程往衷,一般也會分析不少的代碼钞翔,而算法書大多是用偽代碼,而不會講程序席舍。值得注意嗅战,競賽書會涉及編程,但又絕不能替代程序設(shè)計(jì)的入門教程。所以驮捍,我這里列出了三個關(guān)鍵詞:程序、競賽和算法脚曾。恰恰競賽就在“程序”與“算法”的中間东且,是利用程序和算法思路去解題。競賽當(dāng)然需要高IQ本讥、豐富的想象珊泳、高超的技巧和有針對性的強(qiáng)化培訓(xùn)。值得注意并且我想強(qiáng)調(diào)的是拷沸,競賽訓(xùn)練并不能替代編程的訓(xùn)練和算法的學(xué)習(xí)色查。希望通過程序競賽來進(jìn)行程序和算法的學(xué)習(xí),或者寄望其可強(qiáng)化學(xué)習(xí)或作為高階訓(xùn)練撞芍,就顯得有點(diǎn)不切實(shí)際秧了。

計(jì)算學(xué)科發(fā)展這么幾十年,在基礎(chǔ)科目上都有非常專門的訓(xùn)練內(nèi)容序无。請大家記住這一點(diǎn)验毡,也許你缺乏這些訓(xùn)練,只是你缺乏帝嗡,而不是教學(xué)內(nèi)容上缺乏晶通。而且這種訓(xùn)練絕不能用競賽的訓(xùn)練來替代。對此缺乏足夠認(rèn)識的同學(xué)將要碰釘子的哟玷!如何有針對性地進(jìn)行學(xué)科訓(xùn)練則不是本文所討論的問題狮辽。

總之,我現(xiàn)在的建議是:競賽本身是非常有意思的活動巢寡,它幫助了程序設(shè)計(jì)的訓(xùn)練和算法的學(xué)習(xí)喉脖,激發(fā)了同學(xué)們的學(xué)習(xí)興趣,也有助于培養(yǎng)學(xué)習(xí)能力讼渊、交流能力动看、團(tuán)隊(duì)精神,值得提倡爪幻。但是競賽不能替代編程與算法的學(xué)科訓(xùn)練菱皆。編程與算法是計(jì)算機(jī)學(xué)科的兩大基本學(xué)科內(nèi)容,是必修的基礎(chǔ)科目挨稿,需要系統(tǒng)地強(qiáng)化訓(xùn)練與學(xué)習(xí)仇轻。

2017年7月6日整理

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市奶甘,隨后出現(xiàn)的幾起案子篷店,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,576評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件疲陕,死亡現(xiàn)場離奇詭異方淤,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)蹄殃,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,515評論 3 399
  • 文/潘曉璐 我一進(jìn)店門携茂,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人诅岩,你說我怎么就攤上這事讳苦。” “怎么了吩谦?”我有些...
    開封第一講書人閱讀 168,017評論 0 360
  • 文/不壞的土叔 我叫張陵鸳谜,是天一觀的道長。 經(jīng)常有香客問我式廷,道長咐扭,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,626評論 1 296
  • 正文 為了忘掉前任懒棉,我火速辦了婚禮草描,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘策严。我一直安慰自己穗慕,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,625評論 6 397
  • 文/花漫 我一把揭開白布妻导。 她就那樣靜靜地躺著逛绵,像睡著了一般。 火紅的嫁衣襯著肌膚如雪倔韭。 梳的紋絲不亂的頭發(fā)上术浪,一...
    開封第一講書人閱讀 52,255評論 1 308
  • 那天,我揣著相機(jī)與錄音寿酌,去河邊找鬼胰苏。 笑死,一個胖子當(dāng)著我的面吹牛醇疼,可吹牛的內(nèi)容都是我干的硕并。 我是一名探鬼主播,決...
    沈念sama閱讀 40,825評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼秧荆,長吁一口氣:“原來是場噩夢啊……” “哼倔毙!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起乙濒,我...
    開封第一講書人閱讀 39,729評論 0 276
  • 序言:老撾萬榮一對情侶失蹤陕赃,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體么库,經(jīng)...
    沈念sama閱讀 46,271評論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡傻丝,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,363評論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了诉儒。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片桑滩。...
    茶點(diǎn)故事閱讀 40,498評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖允睹,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情幌氮,我是刑警寧澤缭受,帶...
    沈念sama閱讀 36,183評論 5 350
  • 正文 年R本政府宣布,位于F島的核電站该互,受9級特大地震影響米者,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜宇智,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,867評論 3 333
  • 文/蒙蒙 一蔓搞、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧随橘,春花似錦喂分、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,338評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至萝嘁,卻和暖如春梆掸,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背牙言。 一陣腳步聲響...
    開封第一講書人閱讀 33,458評論 1 272
  • 我被黑心中介騙來泰國打工酸钦, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人咱枉。 一個月前我還...
    沈念sama閱讀 48,906評論 3 376
  • 正文 我出身青樓卑硫,卻偏偏與公主長得像,于是被迫代替她去往敵國和親庞钢。 傳聞我的和親對象是個殘疾皇子拔恰,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,507評論 2 359

推薦閱讀更多精彩內(nèi)容