• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆 - 5  文章 - 2  trackbacks - 0
            <2025年5月>
            27282930123
            45678910
            11121314151617
            18192021222324
            25262728293031
            1234567

            There can be no Triumph without Loss,No Victory without Suffering,No Freedom without Sacrifice. All you have to decide is what to do with the time that is given to you. Get busy Living, or Get busy Dying?

            常用鏈接

            留言簿

            隨筆分類(4)

            隨筆檔案(5)

            文章分類(88)

            文章檔案(10)

            Andriod

            Language

            OpenCV&OpenSSLink

            OpenSource

            Others

            Python&Ruby

            WP7

            WTL

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

              算法是程序員的根本,雖然下面介紹的十大算法有數學的成分,但確實是程序員須知的10大算法。

            發明十大算法的其中幾位算法大師

            一、1946 蒙特卡洛方法

            [1946: John von Neumann, Stan Ulam, and Nick Metropolis, all at the Los Alamos Scientific Laboratory, cook up the Metropolis algorithm, also known as the Monte Carlo method.]

            1946年,美國拉斯阿莫斯國家實驗室的三位科學家John von Neumann,Stan Ulam 和 Nick Metropolis

            共同發明,被稱為蒙特卡洛方法。

            它的具體定義是:

            在廣場上畫一個邊長一米的正方形,在正方形內部隨意用粉筆畫一個不規則的形狀,

            現在要計算這個不規則圖形的面積,怎么計算列?

            蒙特卡洛(Monte Carlo)方法告訴我們,均勻的向該正方形內撒N(N 是一個很大的自然數)個黃豆,隨后數數有多少個黃豆在這個不規則幾何形狀內部,比如說有M個,
            那么,這個奇怪形狀的面積便近似于M/N,N越大,算出來的值便越精確。在這里我們要假定豆子都在一個平面上,相互之間沒有重疊。

            蒙特卡洛方法可用于近似計算圓周率:讓計算機每次隨機生成兩個0到1之間的數,看這兩個實數是否在單位圓內。生成一系列隨機點,統計單位圓內的點數 與總點數,(圓面積和正方形面積之比為PI:1,PI為圓周率),當隨機點取得越多(但即使取10的9次方個隨機點時,其結果也僅在前4位與圓周率吻合) 時,其結果越接近于圓周率。

            二、1947 單純形法

            [1947: George Dantzig, at the RAND Corporation, creates the simplex method for linear programming.]

            1947年,蘭德公司的,Grorge Dantzig,發明了單純形方法。單純形法,此后成為了線性規劃學科的重要基石。所謂線性規劃,簡單的說,就是給定一組線性(所有變量都是一次冪)約束 條件(例如a1*x1+b1*x2+c1*x3>0),求一個給定的目標函數的極值。

            這么說似乎也太太太抽象了,但在現實中能派上用場的例子可不罕見——比如對于一個公司而言,其能夠投入生產的人力物力有限(“線性約束條件”),而 公司的目標是利潤最大化(“目標函數取最大值”),看,線性規劃并不抽象吧!線性規劃作為運籌學(operation research)的一部分,成為管理科學領域的一種重要工具。而Dantzig提出的單純形法便是求解類似線性規劃問題的一個極其有效的方法。

            三、1950 Krylov子空間迭代法

            [1950: Magnus Hestenes, Eduard Stiefel, and Cornelius Lanczos, all from the Institute for Numerical Analysis at the National Bureau of Standards, initiate the development of Krylov subspace iteration methods.]

            1950年:美國國家標準局數值分析研究所的,馬格努斯Hestenes,愛德華施蒂費爾和科尼利厄斯的Lanczos,發明了Krylov子空間 迭代法。Krylov子空間迭代法是用來求解形如Ax=b 的方程,A是一個n*n 的矩陣,當n充分大時,直接計算變得非常困難,而Krylov方法則巧妙地將其變為Kxi+1=Kxi+b-Axi的迭代形式來求解。這里的K(來源于作 者俄國人Nikolai Krylov姓氏的首字母)是一個構造出來的接近于A的矩陣,而迭代形式的算法的妙處在于,它將復雜問題化簡為階段性的易于計算的子步驟。

            四、1951 矩陣計算的分解方法

            [1951: Alston Householder of Oak Ridge National Laboratory formalizes the decompositional approach to matrix computations.]

            1951年,阿爾斯通橡樹嶺國家實驗室的Alston Householder提出,矩陣計算的分解方法。這個算法證明了任何矩陣都可以分解為三角、對角、正交和其他特殊形式的矩陣,該算法的意義使得開發靈活的矩陣計算軟件包成為可能。

            五、1957 優化的Fortran編譯器

            [1957: John Backus leads a team at IBM in developing the Fortran optimizing compiler.]

            1957年:約翰巴庫斯領導開發的IBM的團隊,創造了Fortran優化編譯器。Fortran,亦譯為福傳,是由Formula Translation兩個字所組合而成,意思是“公式翻譯”。它是世界上第一個被正式采用并流傳至今的高級編程語言。這個語言現在,已經發展到 了,Fortran 2008,并為人們所熟知。

            六、1959-61 計算矩陣特征值的QR算法

            [1959–61: J.G.F. Francis of Ferranti Ltd, London, finds a stable method for computing eigenvalues, known as the QR algorithm.]

            1959-61:倫敦費倫蒂有限公司的J.G.F. Francis,找到了一種穩定的特征值的計算方法,這就是著名的QR算法。這也是一個和線性代數有關的算法,學過線性代數的應該記得“矩陣的特征值”, 計算特征值是矩陣計算的最核心內容之一,傳統的求解方案涉及到高次方程求根,當問題規模大的時候十分困難。QR算法把矩陣分解成一個正交矩陣(希望讀此文 的你,知道什么是正交矩陣。:D。)與一個上三角矩陣的積,和前面提到的Krylov 方法類似,這又是一個迭代算法,它把復雜的高次方程求根問題化簡為階段性的易于計算的子步驟,使得用計算機求解大規模矩陣特征值成為可能。這個算法的作者 是來自英國倫敦的J.G.F. Francis。

            七、1962 快速排序算法

            [1962: Tony Hoare of Elliott Brothers, Ltd., London, presents Quicksort.]

            1962年:倫敦的,托尼埃利奧特兄弟有限公司,霍爾提出了快速排序。哈哈,恭喜你,終于看到了可能是你第一個比較熟悉的算法~。快速排序算法作為 排序算法中的經典算法,它被應用的影子隨處可見。快速排序算法最早由Tony Hoare爵士設計,它的基本思想是將待排序列分為兩半,左邊的一半總是“小的”,右邊的一半總是“大的”,這一過程不斷遞歸持續下去,直到整個序列有 序。說起這位Tony Hoare爵士,快速排序算法其實只是他不經意間的小小發現而已,他對于計算機貢獻主要包括形式化方法理論,以及ALGOL60 編程語言的發明等,他也因這些成就獲得1980 年圖靈獎。

            ========

            關于快速排序算法的具體認識與應用,可參考我寫的一篇文章,

            精通八大排序算法系列、一、快速排序算法:

            http://blog.csdn.net/v_JULY_v/archive/2011/01/04/6116297.aspx

            ------------------------------------------------------------

            快速排序的平均時間復雜度僅僅為O(Nlog(N)),相比于普通選擇排序和冒泡排序等而言,

            實在是歷史性的創舉。

            八、1965 快速傅立葉變換

            [1965: James Cooley of the IBM T.J. Watson Research Center and John Tukey of Princeton University and AT&T Bell Laboratories unveil the fast Fourier transform.]

            1965年:IBM 華生研究院的James Cooley,和普林斯頓大學的John Tukey,AT&T貝爾實驗室共同推出了快速傅立葉變換。快速傅立葉算法是離散傅立葉算法(這可是數字信號處理的基石)的一種快速算法,其時間復雜度僅 為O(Nlog(N));比時間效率更為重要的是,快速傅立葉算法非常容易用硬件實現,因此它在電子技術領域得到極其廣泛的應用。日后,我會在我的經典算 法研究系列,著重闡述此算法。

            九、1977 整數關系探測算法

            [1977: Helaman Ferguson and Rodney Forcade of Brigham Young University advance an integerrelation detection algorithm.]

            1977年:Helaman Ferguson和 伯明翰大學的Rodney Forcade,提出了Forcade檢測算法的整數關系。整數關系探測是個古老的問題,其歷史甚至可以追溯到歐幾里德的時代。具體的說:給定—組實數 X1,X2,...,Xn,是否存在不全為零的整數a1,a2,...an,使得:a1 x 1 +a2 x2 + . . . + an x n =0?

            這一年BrighamYoung大學的Helaman Ferguson 和Rodney Forcade解決了這一問題。該算法應用于“簡化量子場論中的Feynman圖的計算”。ok,它并不要你懂,了解即可。

            十、1987 快速多極算法

            [1987: Leslie Greengard and Vladimir Rokhlin of Yale University invent the fast multipolealgorithm.]

            1987年:萊斯利的Greengard,和耶魯大學的Rokhlin發明了快速多極算法。

            此快速多極算法用來計算“經由引力或靜電力相互作用的N 個粒子運動的精確計算——例如銀河系中的星體,或者蛋白質中的原子間的相互作用”。ok,了解即可。?

            本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/v_JULY_v/archive/2011/01/10/6127953.aspx

            posted on 2011-03-09 09:07 jemmyLiu 閱讀(272) 評論(0)  編輯 收藏 引用 所屬分類: Arithmetic
            成人国内精品久久久久一区| 久久精品国产99久久久古代| 国产综合久久久久久鬼色| 精品久久久久久久久中文字幕| 国产成人精品久久一区二区三区av | 亚洲国产一成久久精品国产成人综合| 亚洲&#228;v永久无码精品天堂久久| 亚洲国产成人精品无码久久久久久综合| 久久精品人人做人人爽电影 | 久久国产免费观看精品3| 国产一区二区三区久久| 久久久久久久久66精品片| 久久精品国产亚洲欧美| 97精品国产97久久久久久免费 | 久久久亚洲欧洲日产国码二区| 99久久精品免费看国产一区二区三区 | 国产成年无码久久久免费| 久久久久久久国产免费看| 99久久99久久久精品齐齐| 欧美亚洲国产精品久久| 国产视频久久| 久久精品成人免费看| 99久久er这里只有精品18| 国产成人久久精品一区二区三区| 久久性精品| 要久久爱在线免费观看| 久久精品国产精品亚洲下载| 欧美激情精品久久久久| 久久99精品国产一区二区三区| 人妻无码中文久久久久专区 | 久久99国产精品99久久| 人妻无码αv中文字幕久久| 亚洲va中文字幕无码久久| 久久99精品久久久大学生| 亚洲综合伊人久久综合| 久久亚洲AV无码精品色午夜| 2021国产精品久久精品| 精品国产乱码久久久久软件 | 伊人久久大香线蕉综合5g| 久久夜色精品国产亚洲av| 亚洲人成网站999久久久综合|