這些僅用於演示目的。 JavaScript標準庫中有許多實現的實現,出於績效原因而要好得多。
感謝您的thealgorithms:https://github.com/thealgorithms
從Wikipedia:氣泡排序(有時稱為沈沒排序)是一種簡單的排序算法,它反复逐步瀏覽要排序的列表,比較每對相鄰的項目並在錯誤的順序中交換它們。通過列表重複列表,直到不需要交換為止,這表明列表已排序。
特性
從Wikipedia:插入排序是一種簡單的排序算法,一次構建最終排序的數組(或列表)一次。在大型列表中,它的效率要比更高級的算法(例如QuickSort,heapsort或Merge Sorts)少得多。
特性
來自Wikipedia:在計算機科學中,合併Sort(也是通常拼寫的Mergesort)是一種有效的,通用的,基於比較的分類算法。大多數實現都會產生穩定的排序,這意味著該實現保留了排序輸出中均等元素的輸入順序。 Mergesort是約翰·馮·諾伊曼(John von Neumann)於1945年發明的一種鴻溝和征服算法。
特性
來自Wikipedia:QuickSort(有時稱為分區 - 交換排序)是一種有效的排序算法,它是將數組元素放在順序上的系統方法。
特性
從Wikipedia:該算法將輸入列表分為兩個部分:已經排序的項目的sublist,這些內容是從列表的左下方(左)構建的,以及剩下的項目的sublist屬於列表的其餘部分。最初,排序的sublist是空的,未分類的sublist是整個輸入列表。該算法是通過在未排序的sublist中找到最小(或最大,取決於排序順序)元素的最小(或最大的),將其交換(交換)與最左的未分類元素(以排序順序)進行交換(交換),並將一個sublist邊界移動到右側。
特性
來自Wikipedia:Shellsort是插入排序的概括,可以交換相距遙遠的項目。這個想法是安排元素列表,以便從任何地方開始考慮每個nth元素都會給出一個排序的列表。據說這樣的清單是H級的。同等地,可以將其視為h交錯列表,每個列表單獨分類。
特性
比較排序算法的複雜性(氣泡排序,插入排序,選擇排序)
複雜度圖
來自Wikipedia:線性搜索或順序搜索是一種在列表中查找目標值的方法。它依次檢查列表的每個元素的目標值,直到找到匹配或搜索所有元素為止。線性搜索在最糟糕的線性時間內運行,最多可以進行n比較,其中n是列表的長度。
特性
來自Wikipedia:二進制搜索,也稱為半間隔搜索或對數搜索,是一種搜索算法,可以在排序的數組中找到目標值的位置。它將目標值與數組的中間元素進行比較;如果它們不平等,那麼目標無法撒謊的一半將被消除,並且搜索持續到剩餘的一半,直到成功為止。
特性
摘自Wikipedia:跳躍搜索或塊搜索是指有序列表的搜索算法。它首先檢查所有項目LKM,其中{ displayStyle k in mathbb {n}} k in mathbb {n} and m是塊大小,直到發現一個項目大於搜索密鑰。為了在列表中找到搜索鍵的確切位置,在Sublist L [(K-1)M,KM]上執行線性搜索。
特性
在密碼學中,凱撒密碼(也稱為凱撒的密碼),移位密碼,凱撒的代碼或凱撒移位是最簡單,最廣為人知的加密技術之一。
這是一種替代密碼,其中授權中的每個字母被字母替換為字母的一些固定位置。例如,在左移3時,D將被A替換為A,E將變成B,依此類推。
該方法以朱利葉斯·凱撒(Julius Caesar)的名字命名,後者在他的私人信件中使用了它。
凱撒密碼執行的加密步驟通常被合併為更複雜的方案的一部分,例如Vigenère密碼,並且在Rot13系統中仍然具有現代應用。與所有單字替換密碼一樣,凱撒密碼很容易被打破,在現代實踐中,基本上沒有通信安全。
Vigenère密碼是一種通過基於關鍵字的字母使用一系列編織的凱撒密碼來加密字母文本的方法。它是多性替代的一種形式。
Vigenère密碼已經重新發明了很多次。該方法最初是由Giovan Battista Bellaso在1553年的La Cifra del中描述的。訊號. Giovan Battista Bellaso;但是,該計劃後來在19世紀被誤導到了布萊斯·德維內爾(Blaise deVigenère),現在被廣泛稱為“Vigenère密碼”。
儘管密碼易於理解和實施,但在三個世紀以來,它抵制了所有打破它的嘗試。這使它贏得了le chiffreindéchiffrable的描述(法語為“難以理解的密碼”)。許多人試圖實施基本上是Vigenère密碼的加密計劃。弗里德里希·卡西斯基(Friedrich Kasiski)是第一個在1863年發布vigenère密碼的一般方法。
在密碼學中,換位密碼是一種加密的方法,通過普通系統,通過宣傳單位(通常是字符或字符的單位)所持的位置移動,因此密文構成了明文的置換。也就是說,單位的順序已更改(重新訂購了明文)。
從數學上講,在字符的位置加密和解密的逆函數上,使用了徒函數。
Luhn算法或Luhn Formula,也稱為“模量10”或“ MOD 10”算法,是一種簡單的校驗和公式,用於驗證各種識別碼,例如信用卡號,IMEI號,IMEI號,國家提供商的國家提供商標識符,美國,加拿大社會保險號,以色列ID,以色列ID和Greek社會安全編號和Greek社會安全編號。它是由IBM科學家漢斯·彼得·盧恩(Hans Peter Luhn)創建的,並在1954年1月6日提交的美國專利2,950,048中進行了描述,並於1960年8月23日授予。