国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

算法之道:從無有到無窮

2011-01-01 00:00:00鄒恒明
計算機(jī)教育 2011年1期


  圖1給出的是常見的智力拼圖游戲題。圖的左面是一個六邊形,右面的A、B、C、D、E、F、G是7塊小拼圖。這7塊小拼圖可以隨意旋轉(zhuǎn)和翻轉(zhuǎn)。現(xiàn)在要把小拼圖無縫鑲嵌到圖左面的六邊形里。但有1塊小拼圖用不上,請找出這塊用不上的小拼圖。
  這道題乍看似乎并不太容易:7塊小拼盤可以隨意旋轉(zhuǎn)、翻轉(zhuǎn)和組合,幾乎有數(shù)不清的方式(至少對于肉眼來說是這樣),短時間內(nèi)似乎做不出來。但真是這樣嗎?對于一個一般的人來說,可能是這樣。但對于一個具有算法思維的人來說,解這道題不過10~20秒鐘的事情,真可謂是不費(fèi)吹灰之力。你看出來了嗎?
  隨著計算機(jī)應(yīng)用廣度和深度的不斷增大,云存儲及云計算逐漸浮出水面,信息技術(shù)已經(jīng)彌漫到乍一看與計算機(jī)沾不上邊的生活物件如電話、電視、冰箱、電飯鍋、汽車甚至臥床等,并進(jìn)而導(dǎo)致物聯(lián)網(wǎng)的出現(xiàn)。在這個云計算與物聯(lián)網(wǎng)的時代,幾乎每個人的生活都或多或少地與計算技術(shù)分不開了。而將所有這些聯(lián)網(wǎng)的物件有效、可靠、可用地管理起來卻不是一件簡單的事情:它需要某種規(guī)則和步驟。就像圖1中的拼圖游戲,解決它需要某種思維規(guī)則和步驟。而這就需要算法。
  從廣義上定義,算法就是求解問題的步驟(指令)。由于計算機(jī)的程序是一條指令接一條指令(步驟)地進(jìn)行,它實際上就是算法的逐步展開與推進(jìn)。因此,算法彌漫在所有的軟件程序里,堪稱是計算機(jī)的靈魂。
  由此可見,學(xué)習(xí)算法、理解算法、掌握算法就成為物聯(lián)網(wǎng)與云時代的一個重要話題。算法也成為一種炙手可熱的知識與技能。根據(jù)對在校和離校大學(xué)生的調(diào)查,算法在人們尤其是專業(yè)人士心目中的地位在不斷提高,人們學(xué)習(xí)算法的積極性也在普遍增加。但如何學(xué)好和深刻理解算法的精髓卻鮮有人知道。盡管不時地有各種貌似大師似的人物對算法進(jìn)行或高亢或膚淺的評論,盡管市場上充斥著古今中外的或宏篇或短小的各種算法書籍,但人們似乎無法從這些“大師”或“大作”里面獲得清晰的引導(dǎo)。有的書籍雖然部頭巨大,覆蓋問題眾多,卻是邏輯凌亂、就事論事,各種算法設(shè)計或分析戰(zhàn)略之間沒有什么邏輯遞進(jìn)或?qū)哟侮P(guān)系,算法各種戰(zhàn)略的順序在安排上非常隨意,與它們之間存在的因果關(guān)聯(lián)不相符合。這些書和資料看多了,人們會覺得腦袋的東西越塞越多,好像給什么東西給堵住了一樣。如果說看這些書還有任何收獲的話,那就是獲得各種具體問題的算法解答。而收獲也僅限于此。在見到一個新問題時,對于到底應(yīng)該使用何種設(shè)計和分析戰(zhàn)略,或JpypSnpJ23hbeMsVL3bYcTQiW/ZVln4RtoHBMOkFcm4=者應(yīng)該以何種順序來嘗試各種算法戰(zhàn)略卻模糊不清甚至不得而知。
  而要克服上述問題就需要培養(yǎng)算法思維,而不僅僅是學(xué)習(xí)各種具體算法戰(zhàn)略和算法解答。
  那么如何培養(yǎng)算法思維呢?答案就是掌握算法背后的邏輯。不同的算法戰(zhàn)略看似不同,實則一脈相承,甚至從更高的層次上看就是同一種思維。所有的算法戰(zhàn)略如分而治之、動態(tài)規(guī)劃、貪婪選擇、隨機(jī)化、近似算法等只不過是同一思維的不同方面而已!明白了這一點(diǎn),對算法的把握就能達(dá)到一個新的境界。
  鑒于上述考慮,本人撰寫了一本與現(xiàn)有算法書完全不同的算法書:《算法之道:從無有到無窮》。說這本書與其他算法書不同,不是說該書討論的內(nèi)容與其他算法書籍完全不同,而是本書討論算法戰(zhàn)略的入眼點(diǎn)、思維層次、演繹方式、討論深度、敘述風(fēng)格與其他算法書(或其它任何科技書)有著巨大的不同。下面就簡略地介紹一下《算法之道》這本書。
  算法之道:從無有到無窮
  與其他算法書籍不同,此書是一本啟示書,而不是算法字典或手冊。本書著力訓(xùn)練讀者的算法思維,力求克服其他算法書的內(nèi)容堆砌、邏輯凌亂、陳述乏味、層次不清等問題,對算法背后的邏輯進(jìn)行推導(dǎo),對算法設(shè)計和分析戰(zhàn)略的邏輯關(guān)系進(jìn)行梳理,形成一個層次感強(qiáng)、由表入里、逐次遞進(jìn)的算法思想體系。例如,對于最小生成樹問題,如果按照書中給出的算法思想體系依次使用不同的算法戰(zhàn)略,則會發(fā)現(xiàn),最小生成樹的構(gòu)建成本隨著該思維體系中算法戰(zhàn)略的邏輯遞進(jìn)而不斷降低(圖2和表1,其中,圖2中的粗線條為構(gòu)成最小生成樹的邊,表1中的V為圖里面的節(jié)點(diǎn)數(shù),E為邊的條數(shù))!而最小生成樹問題也成為串起所有算法設(shè)計戰(zhàn)略的一座橋梁,成為算法思維的一根聯(lián)系紐帶。
  本書通過這種邏輯遞進(jìn)的算法戰(zhàn)略討論讓讀者看到,不同的算法戰(zhàn)略雖然五花八門,實則同出一源,甚至就是同一種思維。它們之間存在邏輯和效率的遞進(jìn)關(guān)系。此外,在注重邏輯與思維的同時,本書沒有忽略論述本身的趣味性。事實上,為了讓讀者在輕松中斟酌算法,本書把對算法的闡述與哲理和生活融合起來,以達(dá)到引人入勝和催人思索的目的。當(dāng)然,上面所闡述的幾點(diǎn)并不是本書的全部特點(diǎn),甚至也不是最關(guān)鍵的特點(diǎn)。本文接下來就簡略地概括一下《算法之道:從無有到無窮》一書的特點(diǎn)。
  算法之道:從無有到無窮的特點(diǎn)
  本書結(jié)構(gòu)新穎,通過將算法的討論分為五大部分(算法基本戰(zhàn)略、算法設(shè)計戰(zhàn)略、算法分析戰(zhàn)略、經(jīng)典算法討論、難解與無解問題),呈現(xiàn)給讀者不同一般算法書的算法脈絡(luò)。
  本書最顯著的特點(diǎn)是對算法的討論深入到其他書所沒有深入的境界。我們更關(guān)注的是算法后面的邏輯脈絡(luò),強(qiáng)調(diào)一個算法為什么會出現(xiàn),又為什么會是現(xiàn)在所呈現(xiàn)的樣子。本書的第二個特點(diǎn)是結(jié)構(gòu)緊湊:擯棄臃腫繁瑣的內(nèi)容堆砌,通過邏輯關(guān)系將算法各部分內(nèi)容進(jìn)行遞進(jìn)演繹。例如,暴力戰(zhàn)略、分治戰(zhàn)略、動態(tài)規(guī)劃戰(zhàn)略、貪婪戰(zhàn)略、隨機(jī)化戰(zhàn)略都是在克服前面一個戰(zhàn)略的基礎(chǔ)上而出現(xiàn),它們之間存在著很強(qiáng)的邏輯遞進(jìn)關(guān)系,也體現(xiàn)著算法思維的過程。本書的第三個特點(diǎn)是全新的角度:也許講的是同樣的算法、相似甚至相同的問題,但是采納的是完全不同的角度,這種獨(dú)特的視角能把我們對算法的理解帶到新的高度。在內(nèi)容與概念上,本書也提出了許多新穎的觀點(diǎn)和思想。例如,本書對算法的定義就與一般算法書有較大不同;對單源單點(diǎn)最短路徑和折半插入排序的討論也是其他算法書所不曾有過的;從無有到無窮、從無窮到無有、一切盡在概率中、概率盡在一切中等算法思維更是其他書所沒有;還有哈希算法中的賭徒原理、競爭分析、Johnson算法、對不可確定性問題的劃分、算法之道和算法隨想等。本書的最后一個特點(diǎn)是趣味講解:以講故事的形式將概念和算法的精華娓娓道來,非常易于理解和消化。
  從來沒有一本科技或者教科書與《算法之道:從無有到無窮》一書類似。這本書由作者幾十年探索、研究、思考與實踐算法的個人經(jīng)歷所啟示,它是當(dāng)今市場上唯一一本以培養(yǎng)算法思維為宗旨的書,不像其他書,僅僅是算法問題與解答的堆積或者是算法原理的平淡陳述。本書以不同尋常的結(jié)構(gòu)與闡述,賦予每種算法戰(zhàn)略以靈性,通過邏輯演繹、生活歸納、趣味講述構(gòu)建一個前所未有的既宏大又精妙的算法魔幻世界。
  請做好心理準(zhǔn)備,在隨著本書一起領(lǐng)略算法思維與哲學(xué)的同時,讀者的生活甚至生命都將可能發(fā)生改變,你看世界的視角與層次也將變化甚至顛覆。你會發(fā)現(xiàn),這個世界原來運(yùn)轉(zhuǎn)在算法之上;原來,無有就是無窮,無窮就是無有,算法不過是無窮與無有的變換之間的一種思維方式。

南皮县| 南宁市| 南阳市| 祁东县| 鄂托克前旗| 武汉市| 随州市| 唐山市| 中江县| 故城县| 原阳县| 信宜市| 仁怀市| 鄯善县| 镇沅| 特克斯县| 吉安县| 资兴市| 甘孜县| 怀集县| 漳浦县| 吉林市| 清镇市| 绩溪县| 肃北| 永城市| 青龙| 赤壁市| 太原市| 原阳县| 柞水县| 信丰县| 玉溪市| 综艺| 铁岭县| 建阳市| 旌德县| 湖北省| 黎川县| 齐齐哈尔市| 当涂县|