什麼是演算法?它們的類型、特徵、範例
我們告訴您什麼是演算法、它們的類型和特徵。此外,我們還解釋了日常生活中使用的演算法的範例。
演算法通常用於使指令系統化。
什麼是演算法?
在數學、邏輯和計算機科學中,演算法是一組系統的有序指令,它透過有限數量的連續步驟提供問題的答案、計算的解決方案或問題的解決方案。演算法通常用於系統化指令和問題解決過程,例如在使用者手冊或電腦邏輯系統中。
「演算法」這個名字來自中世紀拉丁語翻譯,是阿拉伯智者穆罕默德·本·穆薩(Mohammed ben Musa,780-840)的暱稱,更廣為人知的名字是花拉子米(al-Khwarizmi),他出生的國家名稱(在現在的烏茲別克共和國) ),最初在西班牙語中發音為“ alguarismo ”,後來當該詞被同化為希臘語arithmos(“數字”)時,這個詞發生了變化,從而產生了當前的術語。
每個演算法都有一個起點和一個終點,並且在它們之間延伸了指令集,通常表示為流程圖、程式語言或數學模型。有些非常古老,例如歐幾裡得幾何原理(約公元前300 年)中發布的演算法,其中包含查找兩個自然數之間最大公約數的步驟,而另一些則非常新,並且用於不同的目的。 。
它可能對您有幫助:計算中的演算法
演算法類型
演算法根據其功能分為兩個基本類別:
排序演算法。它們根據特定的順序標準或關係(例如數字或字典順序)(重新)組織列表或向量中的一組給定元素。這些類型的演算法對於執行搜尋演算法至關重要,因為它們需要有序列表才能更快地執行。
搜尋演算法。它們允許您在集合或資料結構中定位具有某些屬性或特徵的元素,或在向量中定位數字。反過來,這種類型的演算法可以有兩種類型:無資訊或盲目(當評估元素時不判斷一個元素是否比前一個更方便)或有資訊(當它們有一個標準來評估元素時)。尋求的要素:啟發式、機率式)。
演算法的特點
一般來說,演算法有以下特點:
它們包含一組有組織的、有限的和客觀的指令,從起點到到達點,並沿途執行特定的邏輯操作。
它們有一個起點(入口)和一個終點(出口),由一系列步驟(過程)連結。輸入包含啟動進程所需的信息,輸出是演算法執行的操作的結果。
它們是精確且定義的工具,只要以相同的方式使用它們就會給出相同的結果,並且在其過程中分析問題的所有可能性。
它們可以透過自然語言、偽計算機程式碼、程式語言或流程圖來表示。
演算法範例
演算法的一些範例是:
遵循烹飪食譜的步驟。雖然它與計算無關,但這是現有演算法最傳統的例子:必須以編程方式執行一系列連續步驟以製作適當的菜餚,同時考慮到不同的因素(烤箱溫度、麵粉的篩分、蔬菜的烹飪時間等)。
社群媒體推薦演算法。控制社交網路上顯示內容的演算法使用用戶自願向系統提供的資訊(基本數據、「喜歡」、互動)作為輸入,從社交網路上可用的內容中選擇他們可能喜歡的內容或捕獲他們的資訊注意力,他們會丟棄他們最不可能感興趣的東西。
谷歌的搜尋演算法。這些演算法中最著名的稱為 Pagerank,它根據以關鍵字或單字集形式提供的輸入來選擇要顯示的網頁,應用不同的相關性、可見性和可信度標準來過濾掉有問題的內容,為用戶提供盡可能接近他們願望的搜尋。
調節交通燈的演算法。這種日常演算法會參考附近交通燈的燈光變化來管理燈光變化時間,以確保交通更加順暢而不會發生碰撞。
公共交通路線演算法。此類演算法用於協調同一城市的不同公車路線,用於尋找更有效的方式來分配公共交通路線,這需要大量的計算和多個同步資料系統的管理。
演算法的重要性
在當今的超級電腦化世界中,演算法是極為重要的工具。由於它們,可以在不同任務的自動化中實現一定程度的效率,特別是在管理大量數據方面,就像當今所謂的大數據和社交網路上的廣告一樣。
目前,演算法會選擇我們可能在串流媒體電視服務上喜歡的電影和電視劇,並組織我們的社群媒體動態以顯示我們可能喜歡的內容。也是人工智慧領域必不可少的要素。
繼續:電子表格