<menu id="60u2k"></menu>
  • <input id="60u2k"><u id="60u2k"></u></input>
  • <menu id="60u2k"><u id="60u2k"></u></menu>
    <input id="60u2k"><u id="60u2k"></u></input>
  • 人物10277 項目5143 室內573 家居及產品161 文章2364 方案1358 攝影776 視頻225 圖書201 讀者來稿 最新評論21,669 所有作品11252 所有圖片152,174
    遞歸算法(一)
    遞歸貫穿于各種文化,貫穿于科學、數學和藝術之中。它就像樹上的樹枝或空中的泡泡一樣的常見. 同時它又對人類的思考和溝通方式也至關重要.
    來源:馬海東

    To iterate is human,to recurse divine.—— L. Peter Deutsch

    遞歸(英語:Recursion),又譯為遞回,在數學與計算機科學中,是指在函數的定義中使用函數自身的方法. 通俗的說就是”自我相似性”, 遞歸涉及將一個結構嵌套在另一個結構中,或者將一個序列嵌入另一個結構中,無論是文字、事件還是物理對象的序列。

    遞歸貫穿于各種文化,貫穿于科學、數學和藝術之中。它就像樹上的樹枝或空中的泡泡一樣的常見. 同時它又對人類的思考和溝通方式也至關重要.

    遞歸具體表現為以下兩個屬性:

    ● 循環嵌套: 一遍又一遍的重復,而每次重復都嵌套在上一次的重復之中.
    ●自身構建: 在循環嵌套的過程中,每次重復的是由同一個“自身”(代表著結構和模式)所構成的。

    自然界中的遞歸

    線性遞歸:

    下一層的遞歸只有一個, 并且嵌套與上一層的遞歸,最常見的就是螺旋線, 線條基于其起點的位置一次又一次的遞歸擴大或縮小,最終形成一條完美的螺旋線. 這種曲線出現在:鸚鵡螺貝殼,玫瑰花瓣,蛛網… 中

     

    螺旋線外形的貝殼

     

    西蘭花: 它的外形是一個天然的近似分形。

     

    分叉遞歸:

    在自然界中更加多見的,無處不在的是分叉遞歸. 在上一層的遞歸基礎上, 下一層分叉出去. 其中比較容易理解的就是樹枝的分, 空氣泡泡的分叉,還有雪天的跡等等…

     

     

    在幾個球型的泡泡之間會有多個小氣泡,在幾個小氣泡之間又有幾個小小氣泡…

     

     

    雪跡的遞歸: 雪跡的邊緣線會在原來的基礎上分叉出去, 然后新產生的邊緣線又在原來的基礎上繼續分叉…

     

     

    一棵樹,它的樹干是我們容易看到的,如果我們再細看樹干上分叉出來的樹枝,會發現它的結構、比例與樹干很像,樹枝上再分叉出更細小的枝椏,這枝椏的結構、比例也與樹枝、樹干很像,如此類推下去,就是一棵樹上的遞歸現象。

     

     

    大尺度的山脈、河床,也很清晰的可以看到分叉遞歸

     

     

    甚至整個銀河系.

    其他學科領域的遞歸

    語言學的遞歸

    語言的遞歸性指“語言結構層次和言語生成中相同結構成分的重復或相套”. 遞歸性是語言學中非常重要的概念, 它影響著人類的思維模式.

    語言的句子是無窮無盡的,而語法規則卻是有限的, 人們之所以能夠借助于有限的語法規則,造出無窮無盡的句子來,其原因就在于語言符號具有遞歸性。

    拿漢語來說, 漢語的句法構造的遞歸性突出地表現為句法成分所特有的套疊現象。在漢語里,由實詞和實詞性詞語組合而成的任何一種類型的句法結構,其組成成分本身,又可以由該類型的句法成分充任,而無須任何的形態標志。這種套疊現象在主謂結構、偏正結構、述賓結構、述補結構、聯合結構、復謂結構中都是存在的。這是由語言符號的遞歸性導致的漢語語法的一個重要特點。

    例如,在句子“他嗓子疼”,中,“嗓子/疼”是主謂結構,這個主謂結構套疊在“他嗓子疼”中做謂語,與“他”又構成一個更大的主謂結構“他/嗓子疼”,這是主謂結構的套疊現象。

    又如,在短語“北大數學老師”中,“數學/老師”是偏正結構,這個偏正結構套疊在 “北大數學教師”中,與它前面的名詞“北大”又構成一個更大的偏正結構“北大/數學老師”,這是偏正結構的套疊現象。這些套疊現象都反映出漢語語法的遞歸性特點。

    在自然語言處理的研究中,語言符號的遞歸性起著很大的作用。機器翻譯的實質,就是把源語言中無限數目的句子,通過有限的規則,自動地轉換為目標語言中無限數目的句子。 如果機器翻譯的規則系統不充分利用語言符號的遞歸性,要實現這樣的轉換是非常困難的,甚至是不可能的。

    生物學的遞歸

    在生物學上有進化樹的概念, 而樹的概念在文章前面已經提到過是一種遞歸現象. 遞歸過程是我們從簡單的生物體到具有無限可能的思想的復雜生物的關鍵。 它是描述幾乎任何類型的進步或進化的方式之一。

    數學中的遞歸

    斐波那契螺旋線,也稱“黃金螺旋”,作圖規則是在以斐波那契數( Fibonacci Sequence )為邊的正方形拼成的長方形中畫一個90度的扇形,連起來的弧線就是斐波那契螺旋線。

     

     

    謝爾賓斯基三角形: 由波蘭數學家謝爾賓斯基在1915年提出。它是自相似集的例子。

    1、取一個實心的三角形。(多數使用等邊三角形)
    2、沿三邊中點的連線,將它分成四個小三角形。
    3、去掉中間的那一個小三角形。
    4、對其余三個小三角形重復1。

    一個謝爾賓斯基三角形也可由一棵分形樹勾勒出來的,三個分支之間形成60°角的分形樹。如果角度減小,三角形可以不斷地轉化為類似于樹的分形。

     

     

    科赫曲線:給定線段AB,科赫曲線可以由以下步驟生成:

    1、將線段分成三等份(AC,CD,DB)
    2、以CD為底,向外(內外隨意)畫一個等邊三角形DMC
    3、將線段CD移去
    4、分別對AC,CM,MD,DB重復1~3。

     

     

    遞歸的實質

    從一般意義上說,遞歸方法是一種從簡單到復雜、從低級到高級的可連續可操作的方法。
    它的每一步驟 都是可行可操作的,各步驟之間又是連續的。
    通過這種方法, 可以用簡單的、自明的要素描述、構造、說明復雜的整體。
    從而通過解決簡單的問題來解決復雜的問題。

    Reference

    ● L Peter Deutsch: The founder of Aladdin Enterprises and creator of Ghostscript, a free software PostScript and Portable Document Format interpreter. Deutsch’s other work includes the Smalltalk implementation that inspired Java just-in-time compilation technology about 15 years later.
    https://www.longdom.org/open-access/recursive-evolution-a-tale-of-natural-id-2332-0915-1000189.pdf
    https://medium.com/@daniel.oliver.king/getting-started-with-recursion-f89f57c5b60e
    https://recursivecurve.wordpress.com/2016/11/23/hilbert-curve-and-recursion/http://www.lingviko.net/feng/8-features-final.pdf

     

    相關文章

    建筑師為什么要會python編程?
    Caad4Rhino:建筑繪圖工具插件
    Rhino及Bob McNeel的故事(轉載)

     

    建筑師編程課推廣

    ikuku精選課 Python4Rhino 建筑師編程課 2020.5.17開始線上直播!講師:馬海東

     

     

    ▽ Python4Rhino遞歸案例1

     

     

     

    ▽?Python4Rhino遞歸案例2

     

    2020.04.29
    請帖個標簽,寫個點評吧!
    標簽(多個標簽用逗號隔開) 登錄可保存標簽
    綁定新浪微博可評論

    小貼士


    標簽收藏可以有利于您以后的內容分類管理
    ->進入收藏管理頁


    blog comments powered by Disqus
    夫妻性生生活视频 - 视频 - 在线观看 - 影视资讯 - 爱赏网