⑴ 數據的演算法都有哪些……
A*搜尋演算法
俗稱A星演算法。這是一種在圖形平面上,有多個節點的路徑,求出最低通過成本的演算法。常用於游戲中的 NPC的移動計算,或線上游戲的 BOT的移動計算上。該演算法像 Dijkstra演算法一樣,可以找到一條最短路徑;也像BFS一樣,進行啟發式的搜索。
Beam Search
束搜索(beam search)方法是解決優化問題的一種啟發式方法,它是在分枝定界方法基礎上發展起來的,它使用啟發式方法估計k個最好的路徑,僅從這k個路徑出發向下搜索,即每一層只有滿意的結點會被保留,其它的結點則被永久拋棄,從而比分枝定界法能大大節省運行時間。束搜索於20 世紀70年代中期首先被應用於 人工智慧領域,1976 年Lowerre在其稱為 HARPY的語音識別系統中第一次使用了束搜索方法。他的目標是並行地搜索幾個潛在的最優決策路徑以減少回溯,並快速地獲得一個解。
二分取中查找演算法
一種在有序數組中查找某一特定元素的搜索演算法。搜素過程從數組的中間元素開始,如果中間元素正好是要查找的元素,則搜素過程結束;如果某一特定元素大於或者小於中間元素,則在數組大於或小於中間元素的那一半中查找,而且跟開始一樣從中間元素開始比較。這種搜索演算法每一次比較都使搜索范圍縮小一半。
Branch and bound
分支定界演算法是一種在問題的解空間樹上搜索問題的解的方法。但與回溯演算法不同,分支定界演算法採用廣度優先或最小耗費優先的方法搜索解空間樹,並且,在分支定界演算法中,每一個活結點只有一次機會成為擴展結點。
數據壓縮
數據壓縮是通過減少計算機中所存儲數據或者通信傳播中數據的冗餘度,達到增大數據密度,最終使數據的存儲空間減少的技術。數據壓縮在文件存儲和分布式系統領域有著十分廣泛的應用。數據壓縮也代表著尺寸媒介容量的增大和網路帶寬的擴展。
Diffie–Hellman密鑰協商
Diffie–Hellman key exchange,簡稱「D–H」,是一種安全協議。它可以讓雙方在完全沒有對方任何預先信息的條件下通過不安全信道建立起一個密鑰。這個密鑰可以在後續的通訊中作為對稱密鑰來加密通訊內容。
Dijkstra』s 演算法
迪科斯徹演算法(Dijkstra)是由荷蘭計算機科學家艾茲格·迪科斯徹發明的。演算法解決的是有向圖中單個源點到其他頂點的最短路徑問題。舉例來說,如果圖中的頂點表示城市,而邊上的權重表示著城市間開車行經的距離,迪科斯徹演算法可以用來找到兩個城市之間的最短路徑。
動態規劃
動態規劃是一種在 數學和計算機科學中使用的,用於求解包含重疊子問題的最優化問題的方法。其基本思想是,將原問題分解為相似的子問題,在求解的過程中通過子問題的解求出原問題的解。 動態規劃的思想是多種演算法的基礎,被廣泛應用於計算機科學和工程領域。比較著名的應用實例有:求解最短路徑問題,背包問題,項目管理,網路流優化等。這里也有一篇文章說得比較詳細。
歐幾里得演算法
在 數學中,輾轉相除法,又稱 歐幾里得演算法,是求 最大公約數的演算法。輾轉相除法首次出現於 歐幾里得的《幾何原本》(第VII卷,命題i和ii)中,而在中國則可以追溯至 東漢出現的《九章算術》。
快速傅里葉變換(FFT)
快速傅里葉變換(Fast Fourier Transform,FFT),是離散傅里葉變換的快速演算法,也可用於計算離散傅里葉變換的逆變換。快速傅里葉變換有廣泛的應用,如數字信號處理、計算大整數乘法、求解偏微分方程等等。
哈希函數
HashFunction是一種從任何一種數據中創建小的數字「指紋」的方法。該 函數將數據打亂混合,重新創建一個叫做散列值的指紋。散列值通常用來代表一個短的隨機字母和數字組成的字元串。好的散列 函數在輸入域中很少出現散列沖突。在散列表和數據處理中,不抑制沖突來區別數據,會使得資料庫記錄更難找到。
堆排序
Heapsort是指利用堆積樹(堆)這種 數據結構所設計的一種排序演算法。堆積樹是一個近似完全二叉樹的結構,並同時滿足堆積屬性:即子結點的鍵值或索引總是小於(或者大於)它的父結點。
歸並排序
Merge sort是建立在歸並操作上的一種有效的排序演算法。該演算法是採用分治法(Divide and Conquer)的一個非常典型的應用。
RANSAC 演算法
RANSAC 是」RANdom SAmpleConsensus」的縮寫。該演算法是用於從一組觀測數據中估計 數學模型參數的迭代方法,由Fischler and Bolles在1981提出,它是一種非確定性演算法,因為它只能以一定的概率得到合理的結果,隨著迭代次數的增加,這種概率是增加的。該演算法的基本假設是觀測數據集中存在」inliers」(那些對模型參數估計起到支持作用的點)和」outliers」(不符合模型的點),並且這組觀測數據受到雜訊影響。RANSAC 假設給定一組」inliers」數據就能夠得到最優的符合這組點的模型。
RSA加密演演算法
這是一個公鑰加密演算法,也是世界上第一個適合用來做簽名的演算法。今天的RSA已經 專利失效,其被廣泛地用於 電子商務加密,大家都相信,只要密鑰足夠長,這個演算法就會是安全的。
並查集Union-find
並查集是一種樹型的 數據結構,用於處理一些不相交集合(Disjoint Sets)的合並及查詢問題。常常在使用中以森林來表示。
Viterbi algorithm
尋找最可能的隱藏狀態序列
等等這些,演算法很多。
⑵ 世紀的演算法是什麼
世紀的演算法是在年份的前兩位數加一,例如1990年,19+1等於20,即1990年為20世紀。
一個世紀代表一百年,通常是指連續的一百年。當用來計算日子時,世紀通常從可以被100整除的年代或此後一年開始,例如2000年或2001年。
這種奇數的紀年法來自於耶穌紀元後,其中的1年通常表示「吾主之年」(year of our lord),因此一世紀從公元1年到公元100年,而二十世紀則從公元1901年到公元2000年,因此2001年是二十一世紀的第一年。
世紀的開始和結束:
盡管一個世紀可以表示任何 100年的任意時期,但對於標准世紀的性質有兩種觀點。一種是基於嚴格的建設,一種是基於大眾的認知。
根據嚴格的結構,公元1世紀始於公元1年,結束於公元100年,公元2世紀跨越101年至200年,同樣的模式繼續向前。在這個模型中,第n個世紀以「01」結束的年份開始,以「00」結束的年份結束;例如,20 世紀包括嚴格使用的1901 年至2000年。
在普遍的看法和實踐中,世紀是通過基於共享「數百」位數字來分組年份來構建的。
在這個模型中,'n'世紀以「00」結尾的年份開始,以「99」結尾的年份結束;例如,1900 年到1999 年,在流行文化中,構成了 20 世紀。(這類似於共享「十」位 的「0 到 9 十年」的分組。)
為了便於計算機計算歷法,天文年份編號和ISO 8601系統都包含零年,天文年 0 對應公元前 1 年,天文年 -1 對應公元前 2 年,以此類推。
替代命名系統
非正式地,可以根據一年中的數百個部分分組引用年份。在這個系統中,1900-1999 年被稱為十九世紀(1900 年代)。除英語使用外,該系統還用於瑞典語、丹麥語、挪威語、冰島語、芬蘭語和匈牙利語。
瑞典語nittonhundratalet(或1900-talet)、丹麥語nittenhundretallet(或1900-tallet )、挪威語nittenhundretallet(或1900-tallet );
芬蘭語tuhatyhdeksänsataaluku(或1900-luku)和匈牙利語ezerkilencszázas évek(或1900-as évek)明確指代 1900-1999 年。
義大利語也有類似的系統,但它只表示數百而省略了「千」一詞。該系統主要作用於 11 世紀至 20 世紀:
1、ilQuattrocento(即「四百」,15世紀)
2、ilCinquecento(即「五百」,16世紀)。
當提到義大利的歷史時,這些術語經常在其他語言中使用。
⑶ 二十世紀十大科技發明是…
希望對你有幫助 一、內燃機:由於內燃機的出現,促成了交通工具的發展以及城郊化。同時也導致了污染。 二、噴氣式飛機:乘坐噴氣式飛機使人們出門旅行的時間大為縮短。整個世界的經濟也因此獲得迅速的增長。 三、通訊衛星:1945年,一位偉大的作家ArthurC.Clarke第一次在他的小說中提出了通訊衛星的構想。半個世紀後的今天,通訊衛星的使用已將全球通訊變為現實。 四、無線電廣播技術:從19世紀收音機發明開始,無線電廣播技術的迅猛發展並配以動畫和影像科技,已大大改變了我們的生活方式。盡管我們還不知道無線電廣播帶給我們的究竟是什麼,但我們無疑已成為了它的忠實聽(觀)眾。 五、雷達:雷達對電視的發明有著巨大的貢獻,因為,早期的雷達使用的就是陰極射線管。而且,雷達還幫助宇宙學家們搜尋遙遠的星系。 六、激光:沒有激光,現代通訊就將不復存在。 七、青黴素:青黴素的功效和它對社會的影響是無法比擬的。在影響力與實際功效方面唯一能與它相匹敵的也只有後來出現的避孕葯了。 八、綠色革命:所謂的"綠色革命"就是指人類為提高單位面積的糧食產量而採用的種種措施。人類的將來是否還將依靠這種方式已成為我們在這今後幾十年必然會面對的問題。但至少沒有"綠色革命",人類仍陷在飢餓的不幸之中。 九、材料技術:材料技術的發展與廣泛運用極大地改變了人們的日常生活。 十、計算機:裝配有晶體管,集成電路和微處理器的計算機帶動了數字科技的發展,使各種各樣的信息轉化為0和1的二進制形式成為可能。
⑷ 關於 世紀 和年代的演算法我不是很明白【100分】
世紀公元和年代的演算法 本世紀初,美國物理學會(American Institute of Physics)和IEEE計算機社團 (IEEE Computer Society)的一本聯合刊物《科學與工程中的計算》發表了由田納西大學的Jack Dongarra和橡樹嶺國家實驗室的Francis Sullivan 聯名撰寫的「世紀十大演算法」一文,該文「試圖整理出在20世紀對科學和工程領域的發展產生最大影響力的十大演算法」。作者苦於「任何選擇都將是充滿爭議的, 因為實在是沒有最好的演算法」,他們只好用編年順序依次列出了這十項演算法領域人類智慧的巔峰之作——給出了一份沒有排名的演算法排行榜。有趣的是,該期雜志還 專門邀請了這些演算法相關領域的「大拿」為這十大演算法撰寫十篇綜述文章,實在是蔚為壯觀。本文的目的,便是要帶領讀者走馬觀花,一同回顧當年這一演算法界的盛 舉。
1946 蒙特卡洛方法
在廣場上畫一個邊長一米的正方形,在正方形內部隨意用粉筆畫一個不規則的形 狀,呃,能幫我算算這個不規則圖形的面積么?蒙特卡洛(Monte Carlo)方法便是解決這個問題的巧妙方法:隨機向該正方形內扔N(N 是一個很大的自然數)個黃豆,隨後數數有多少個黃豆在這個不規則幾何形狀內部,比如說有M個:那麼,這個奇怪形狀的面積便近似於M/N,N越大,算出來的 值便越精確。別小看這個數黃豆的笨辦法,大到國家的民意測驗,小到中子的移動軌跡,從金融市場的風險分析,到軍事演習的沙盤推演,蒙特卡洛方法無處不在背 後發揮著它的神奇威力。
蒙特卡洛方法由美國拉斯阿莫斯國家實驗室的三位科學家John von Neumann(看清楚了,這位可是馮諾伊曼同志!),Stan Ulam 和 Nick Metropolis共同發明。就其本質而言,蒙特卡洛方法是用類似於物理實驗的近似方法求解問題,它的魔力在於,對於那些規模極大的問題,求解難度隨著 問題的維數(自變數個數)的增加呈指數級別增長,出現所謂的「維數的災難」(Course of Dimensionality)。對此,傳統方法無能為力,而蒙特卡洛方法卻可以獨辟蹊徑,基於隨機模擬的過程給出近似的結果。
最後八卦一下,Monte Carlo這個名字是怎麼來的?它是摩納哥的一座以博彩業聞名的城市,賭博其實是門概率的高深學問,不是么?
1947 單純形法
單 純形法是由大名鼎鼎的「預測未來」的蘭德公司的Grorge Dantzig發明的,它成為線性規劃學科的重要基石。所謂線性規劃,簡單的說,就是給定一組線性(所有變數都是一次冪)約束條件(例如a1*x1+ b1*x2+c1*x3>0),求一個給定的目標函數的極值。這么說似乎也太太太抽象了,但在現實中能派上用場的例子可不罕見——比如對於一個公司 而言,其能夠投入生產的人力物力有限(「線性約束條件」),而公司的目標是利潤最大化(「目標函數取最大值」),看,線性規劃並不抽象吧!線性規劃作為運 籌學(operation research)的一部分,成為管理科學領域的一種重要工具。而Dantzig提出的單純形法便是求解類似線性規劃問題的一個極其有效的方法,說來慚 愧,本科二年級的時候筆者也學過一學期的運籌學,現在腦子里能想起的居然只剩下單純形法了——不過這不也正說明了該方法的簡單和直觀么?
順便說句題外話,寫過《萬曆十五年》的黃仁宇曾說中國的傳統是「不能從數目字上管理」,我們習慣於「拍腦袋」,而不是基於嚴格的數據做決定,也許改變這一傳統的方法之一就是全民動員學習線性規劃喔。
1950 Krylov子空間迭代法
1951 矩陣計算的分解方法
50 年代初的這兩個演算法都是關於線性代數中的矩陣計算的,看到數學就頭大的讀者恐怕看到演算法的名字已經開始皺眉毛了。Krylov子空間疊代法是用來求解形如 Ax=b 的方程,A是一個n*n 的矩陣,當n充分大時,直接計算變得非常困難,而Krylov方法則巧妙地將其變為Kxi+1=Kxi+b-Axi的迭代形式來求解。這里的K(來源於作 者俄國人Nikolai Krylov姓氏的首字母)是一個構造出來的接近於A的矩陣,而迭代形式的演算法的妙處在於,它將復雜問題化簡為階段性的易於計算的子步驟。
1951年由橡樹嶺國家實驗室的AlstonHouseholder提出的矩陣計算的分解方法,則證明了任何矩陣都可以分解為三角、對角、正交和其他特殊形式的矩陣,該演算法的意義使得開發靈活的矩陣計算軟體包成為可能。
1957 優化的Fortran編譯器
說 實話,在這份學術氣息無比濃郁的榜單里突然冒出一個編譯器(Compiler)如此工程化的東東實在讓人有「關公戰秦瓊」的感覺。不過換個角度想 想,Fortran這一門幾乎為科學計算度身定製的編程語言對於科學家(尤其是數學家,物理學家)們實在是太重要了,簡直是他們形影不離的一把瑞士軍刀, 這也難怪他們紛紛搶著要把票投給了它。要知道,Fortran是第一種能將數學公式轉化為計算機程序的高級語言,它的誕生使得科學家們真正開始利用計算機 作為計算工具為他們的研究服務,這是計算機應用技術的一個里程碑級別的貢獻。
話說回來,當年這幫開發Fortran的傢伙真是天 才——只用23500行匯編指令就完成了一個Fortran編譯器,而且其效率之高令人嘆為觀止:當年在IBM 主持這一項目的負責人JohnBackus在數十年後,回首這段往事的時候也感慨,說它生成代碼的效率「出乎了所有開發者的想像」。看來作為程序員,自己 寫的程序跑起來「出乎自己的想像」,有時候還真不一定是件壞事!
1959-61 計算矩陣特徵值的QR演算法
呼, 又是一個和線性代數有關的演算法,學過線性代數的應該還記得「矩陣的特徵值」吧?計算特徵值是矩陣計算的最核心內容之一,傳統的求解方案涉及到高次方程求 根,當問題規模大的時候十分困難。QR演算法把矩陣分解成一個正交矩陣(什麼是正交矩陣?!還是趕緊去翻書吧!)與一個上三角矩陣的積,和前面提到的 Krylov 方法類似,這又是一個迭代演算法,它把復雜的高次方程求根問題化簡為階段性的易於計算的子步驟,使得用計算機求解大規模矩陣特徵值成為可能。這個演算法的作者 是來自英國倫敦的J.G.F. Francis。
1962 快速排序演算法
不少讀者恐怕和我一樣,看到「快 速排序演算法」(Quick Sort)這個條目時,心裡的感覺是——「這可總算找到組織了」。相比於其他一些對程序員而言高深莫測的數學物理公式,快速排序演算法真是我們朝夕相處的好 夥伴——老闆讓你寫個排序演算法,如果你寫出來的不是快速排序,你都不好意思跟同事打招呼。其實根本不用自己動手實現, 不論是ANSI C,C++ STL,還是Java SDK,天下幾乎所有的SDK里都能找到它的某種實現版本。
快速排序演算法最早由Tony Hoare爵士設計,它的基本思想是將待排序列分為兩半,左邊的一半總是「小的」,右邊的一半總是「大的」,這一過程不斷遞歸持續下去,直到整個序列有 序。說起這位Tony Hoare爵士,快速排序演算法其實只是他不經意間的小小發現而已,他對於計算機貢獻主要包括形式化方法理論,以及ALGOL60 編程語言的發明等,他也因這些成就獲得1980 年圖靈獎。
快速排序的平均時間復雜度僅僅為O(Nlog(N)),相比於普通選擇排序和冒泡排序等而言,實在是歷史性的創舉。
1965 快速傅立葉變換
如 果要評選對我們的日常生活影響最大的演算法,快速傅立葉變換演算法應該是當仁不讓的總冠軍——每天當拿起話筒,打開手機,聽mp3,看DVD,用DC拍照 ——毫不誇張的說,哪裡有數字信號處理,哪裡就有快速傅立葉變換。快速傅立葉演算法是離散傅立葉演算法(這可是數字信號處理的基石)的一種快速演算法,它有 IBM 華生研究院的James Cooley和普林斯頓大學的John Tukey共同提出,其時間復雜度僅為O(Nlog(N));比時間效率更為重要的是,快速傅立葉演算法非常容易用硬體實現,因此它在電子技術領域得到極其 廣泛的應用。
1977 整數關系探測演算法
整數關系探測是個古老的問題,其歷史甚至可以追溯到歐幾里德的時代。具體的說:
給 定—組實數X1,X2,...,Xn,是否存在不全為零的整數a1,a2,...an,使得:a 1 x 1 +a 2 x 2 + . . . + a n x n = 0 這一年BrighamYoung大學的Helaman Ferguson 和Rodney Forcade解決了這一問題。至於這個演算法的意義嘛,呃,該演算法應用於「簡化量子場論中的Feynman圖的計算」——太深奧的學問拉!
1987 快速多極演算法
日 歷翻到了1987 年,這一年的演算法似乎更加玄奧了,耶魯大學的Leslie Greengard和Vladimir Rokhlin提出的快速多極演算法用來計算「經由引力或靜電力相互作用的N 個粒子運動的精確計算——例如銀河系中的星體,或者蛋白質中的原子間的相互作用」,天哪,不是我不明白,這世界真是變得快!
所謂浪花淘盡英雄,這些演算法的發明者許多已經駕鶴西去。二十一世紀的頭五年也已經在不知不覺中從我們指尖滑過,不知下一次十大演算法評選的盛事何時再有,也許我們那時已經垂垂老去,也許我們早已不在人世,只是心中唯一的希望——裡面該有個中國人的名字吧!
⑸ 數據挖掘十大經典演算法及各自優勢
數據挖掘十大經典演算法及各自優勢
不僅僅是選中的十大演算法,其實參加評選的18種演算法,實際上隨便拿出一種來都可以稱得上是經典演算法,它們在數據挖掘領域都產生了極為深遠的影響。
1. C4.5
C4.5演算法是機器學習演算法中的一種分類決策樹演算法,其核心演算法是ID3演算法. C4.5演算法繼承了ID3演算法的優點,並在以下幾方面對ID3演算法進行了改進:
1) 用信息增益率來選擇屬性,克服了用信息增益選擇屬性時偏向選擇取值多的屬性的不足;2) 在樹構造過程中進行剪枝;3) 能夠完成對連續屬性的離散化處理;4) 能夠對不完整數據進行處理。
C4.5演算法有如下優點:產生的分類規則易於理解,准確率較高。其缺點是:在構造樹的過程中,需要對數據集進行多次的順序掃描和排序,因而導致演算法的低效。
2. The k-means algorithm 即K-Means演算法
k-means algorithm演算法是一個聚類演算法,把n的對象根據他們的屬性分為k個分割,k < n。它與處理混合正態分布的最大期望演算法很相似,因為他們都試圖找到數據中自然聚類的中心。它假設對象屬性來自於空間向量,並且目標是使各個群組內部的均 方誤差總和最小。
3. Support vector machines
支持向量機,英文為Support Vector Machine,簡稱SV機(論文中一般簡稱SVM)。它是一種監督式學習的方法,它廣泛的應用於統計分類以及回歸分析中。支持向量機將向量映射到一個更 高維的空間里,在這個空間里建立有一個最大間隔超平面。在分開數據的超平面的兩邊建有兩個互相平行的超平面。分隔超平面使兩個平行超平面的距離最大化。假 定平行超平面間的距離或差距越大,分類器的總誤差越小。一個極好的指南是C.J.C Burges的《模式識別支持向量機指南》。van der Walt 和 Barnard 將支持向量機和其他分類器進行了比較。
4. The Apriori algorithm
Apriori演算法是一種最有影響的挖掘布爾關聯規則頻繁項集的演算法。其核心是基於兩階段頻集思想的遞推演算法。該關聯規則在分類上屬於單維、單層、布爾關聯規則。在這里,所有支持度大於最小支持度的項集稱為頻繁項集,簡稱頻集。
5. 最大期望(EM)演算法
在統計計算中,最大期望(EM,Expectation–Maximization)演算法是在概率(probabilistic)模型中尋找參數最大似然 估計的演算法,其中概率模型依賴於無法觀測的隱藏變數(Latent Variabl)。最大期望經常用在機器學習和計算機視覺的數據集聚(Data Clustering)領域。
6. PageRank
PageRank是Google演算法的重要內容。2001年9月被授予美國專利,專利人是Google創始人之一拉里·佩奇(Larry Page)。因此,PageRank里的page不是指網頁,而是指佩奇,即這個等級方法是以佩奇來命名的。
PageRank根據網站的外部鏈接和內部鏈接的數量和質量倆衡量網站的價值。PageRank背後的概念是,每個到頁面的鏈接都是對該頁面的一次投票, 被鏈接的越多,就意味著被其他網站投票越多。這個就是所謂的「鏈接流行度」——衡量多少人願意將他們的網站和你的網站掛鉤。PageRank這個概念引自 學術中一篇論文的被引述的頻度——即被別人引述的次數越多,一般判斷這篇論文的權威性就越高。
7. AdaBoost
Adaboost是一種迭代演算法,其核心思想是針對同一個訓練集訓練不同的分類器(弱分類器),然後把這些弱分類器集合起來,構成一個更強的最終分類器 (強分類器)。其演算法本身是通過改變數據分布來實現的,它根據每次訓練集之中每個樣本的分類是否正確,以及上次的總體分類的准確率,來確定每個樣本的權 值。將修改過權值的新數據集送給下層分類器進行訓練,最後將每次訓練得到的分類器最後融合起來,作為最後的決策分類器。
8. kNN: k-nearest neighbor classification
K最近鄰(k-Nearest Neighbor,KNN)分類演算法,是一個理論上比較成熟的方法,也是最簡單的機器學習演算法之一。該方法的思路是:如果一個樣本在特徵空間中的k個最相似(即特徵空間中最鄰近)的樣本中的大多數屬於某一個類別,則該樣本也屬於這個類別。
9. Naive Bayes
在眾多的分類模型中,應用最為廣泛的兩種分類模型是決策樹模型(Decision Tree Model)和樸素貝葉斯模型(Naive Bayesian Model,NBC)。 樸素貝葉斯模型發源於古典數學理論,有著堅實的數學基礎,以 及穩定的分類效率。同時,NBC模型所需估計的參數很少,對缺失數據不太敏感,演算法也比較簡單。理論上,NBC模型與其他分類方法相比具有最小的誤差率。 但是實際上並非總是如此,這是因為NBC模型假設屬性之間相互獨立,這個假設在實際應用中往往是不成立的,這給NBC模型的正確分類帶來了一定影響。在屬 性個數比較多或者屬性之間相關性較大時,NBC模型的分類效率比不上決策樹模型。而在屬性相關性較小時,NBC模型的性能最為良好。10. CART: 分類與回歸樹
CART, Classification and Regression Trees。 在分類樹下面有兩個關鍵的思想。第一個是關於遞歸地劃分自變數空間的想法;第二個想法是用驗證數據進行剪枝。
以上是小編為大家分享的關於數據挖掘十大經典演算法及各自優勢的相關內容,更多信息可以關注環球青藤分享更多干貨
⑹ 現在密碼學採用的演算法主要有什麼
現代密碼學將演算法分為具有不同功能的幾種
常用的主要有三種:
1.對稱密碼演算法
DES演算法——二十世紀七十年代提出,曾經稱霸對稱加密領域30年
AES演算法——二十一世紀初提出用以取代DES演算法
IDEA演算法——二十世紀九十年代初提出,也是一種流行演算法
RC4演算法——經典的流密碼演算法
2.公鑰密碼演算法
D-H演算法——用於密鑰協商,是第一種使用的公鑰演算法,基於離散對數難解問題
RSA演算法——最常用的公鑰演算法,功能強大
3.哈希函數(雜湊函數)
MD5——常用演算法,用於產生80比特的輸出
SHA-1——也是常用演算法,用於產生128比特輸出
---
這是最經典的若干種演算法
說的不對之處請指正
------
個人意見 僅供參考
⑺ 世界十大數學難題已經解決了哪些
「千僖難題」之一:P(多項式演算法)問題對NP(非多項式演算法)問題 在一個周六的晚上,你參加了一個盛大的晚會。由於感到局促不安,你想知道這一大廳中是否有你已經認識的人。你的主人向你提議說,你一定認識那位正在甜點盤附近角落的女士羅絲。不費一秒鍾,你就能向那裡掃視,並且發現你的主人是正確的。然而,如果沒有這樣的暗示,你就必須環顧整個大廳,一個個地審視每一個人,看是否有你認識的人。生成問題的一個解通常比驗證一個給定的解時間花費要多得多。這是這種一般現象的一個例子。與此類似的是,如果某人告訴你,數13,717,421可以寫成兩個較小的數的乘積,你可能不知道是否應該相信他,但是如果他告訴你它可以因子分解為3607乘上3803,那麼你就可以用一個袖珍計算器容易驗證這是對的。不管我們編寫程序是否靈巧,判定一個答案是可以很快利用內部知識來驗證,還是沒有這樣的提示而需要花費大量時間來求解,被看作邏輯和計算機科學中最突出的問題之一。它是斯蒂文·考克(StephenCook)於1971年陳述的。
「千僖難題」之二: 霍奇(Hodge)猜想 二十世紀的數學家們發現了研究復雜對象的形狀的強有力的辦法。基本想法是問在怎樣的程度上,我們可以把給定對象的形狀通過把維數不斷增加的簡單幾何營造塊粘合在一起來形成。這種技巧是變得如此有用,使得它可以用許多不同的方式來推廣;最終導至一些強有力的工具,使數學家在對他們研究中所遇到的形形色色的對象進行分類時取得巨大的進展。不幸的是,在這一推廣中,程序的幾何出發點變得模糊起來。在某種意義下,必須加上某些沒有任何幾何解釋的部件。霍奇猜想斷言,對於所謂射影代數簇這種特別完美的空間類型來說,稱作霍奇閉鏈的部件實際上是稱作代數閉鏈的幾何部件的(有理線性)組合。
「千僖難題」之三: 龐加萊(Poincare)猜想 如果我們伸縮圍繞一個蘋果表面的橡皮帶,那麼我們可以既不扯斷它,也不讓它離開表面,使它慢慢移動收縮為一個點。另一方面,如果我們想像同樣的橡皮帶以適當的方向被伸縮在一個輪胎面上,那麼不扯斷橡皮帶或者輪胎面,是沒有辦法把它收縮到一點的。我們說,蘋果表面是「單連通的」,而輪胎面不是。大約在一百年以前,龐加萊已經知道,二維球面本質上可由單連通性來刻畫,他提出三維球面(四維空間中與原點有單位距離的點的全體)的對應問題。這個問題立即變得無比困難,從那時起,數學家們就在為此奮斗。
「千僖難題」之四: 黎曼(Riemann)假設 有些數具有不能表示為兩個更小的數的乘積的特殊性質,例如,2,3,5,7,等等。這樣的數稱為素數;它們在純數學及其應用中都起著重要作用。在所有自然數中,這種素數的分布並不遵循任何有規則的模式;然而,德國數學家黎曼(1826~1866)觀察到,素數的頻率緊密相關於一個精心構造的所謂黎曼蔡塔函數z(s$的性態。著名的黎曼假設斷言,方程z(s)=0的所有有意義的解都在一條直線上。這點已經對於開始的1,500,000,000個解驗證過。證明它對於每一個有意義的解都成立將為圍繞素數分布的許多奧秘帶來光明。
「千僖難題」之五: 楊-米爾斯(Yang-Mills)存在性和質量缺口 量子物理的定律是以經典力學的牛頓定律對宏觀世界的方式對基本粒子世界成立的。大約半個世紀以前,楊振寧和米爾斯發現,量子物理揭示了在基本粒子物理與幾何對象的數學之間的令人注目的關系。基於楊-米爾斯方程的預言已經在如下的全世界范圍內的實驗室中所履行的高能實驗中得到證實:布羅克哈文、斯坦福、歐洲粒子物理研究所和築波。盡管如此,他們的既描述重粒子、又在數學上嚴格的方程沒有已知的解。特別是,被大多數物理學家所確認、並且在他們的對於 「誇克」的不可見性的解釋中應用的「質量缺口」假設,從來沒有得到一個數學上令人滿意的證實。在這一問題上的進展需要在物理上和數學上兩方面引進根本上的新觀念。
「千僖難題」之六: 納維葉-斯托克斯(Navier-Stokes)方程的存在性與光滑性 起伏的波浪跟隨著我們的正在湖中蜿蜒穿梭的小船,湍急的氣流跟隨著我們的現代噴氣式飛機的飛行。數學家和物理學家深信,無論是微風還是湍流,都可以通過理解納維葉-斯托克斯方程的解,來對它們進行解釋和預言。雖然這些方程是19世紀寫下的,我們對它們的理解仍然極少。挑戰在於對數學理論作出實質性的進展,使我們能解開隱藏在納維葉-斯托克斯方程中的奧秘。
「千僖難題」之七: 貝赫(Birch)和斯維訥通-戴爾(Swinnerton-Dyer)猜想 數學家總是被諸如x^2+y^2=z^2那樣的代數方程的所有整數解的刻畫問題著迷。歐幾里德曾經對這一方程給出完全的解答,但是對於更為復雜的方程,這就變得極為困難。事實上,正如馬蒂雅謝維奇(Yu.V.Matiyasevich)指出,希爾伯特第十問題是不可解的,即,不存在一般的方法來確定這樣的方法是否有一個整數解。當解是一個阿貝爾簇的點時,貝赫和斯維訥通-戴爾猜想認為,有理點的群的大小與一個有關的蔡塔函數z(s)在點s=1附近的性態。特別是,這個有趣的猜想認為,如果z(1)等於0,那麼存在無限多個有理點(解),相反,如果z(1)不等於0,那麼只存在有限多個這樣的點。
八:幾何尺規作圖問題 這里所說的「幾何尺規作圖問題」是指做圖限制只能用直尺、圓規,而這里的直尺是指沒有刻度只能畫直線的尺。「幾何尺規作圖問題」包括以下四個問題 1.化圓為方-求作一正方形使其面積等於一已知圓; 2.三等分任意角; 3.倍立方-求作一立方體使其體積是一已知立方體的二倍。 4.做正十七邊形。 以上四個問題一直困擾數學家二千多年都不得其解,而實際上這前三大問題都已證明不可能用直尺圓規經有限步驟可解決的。第四個問題是高斯用代數的方法解決的,他也視此為生平得意之作,還交待要把正十七邊形刻在他的墓碑上,但後來他的墓碑上並沒有刻上十七邊形,而是十七角星,因為負責刻碑的雕刻家認為,正十七邊形和圓太像了,大家一定分辨不出來。
九:哥德巴赫猜想 公元1742年6月7日哥德巴赫(Goldbach)寫信給當時的大數學家歐拉(Euler),提出了以下的猜想: (a) 任何一個>=6之偶數,都可以表示成兩個奇質數之和。 (b) 任何一個>=9之奇數,都可以表示成三個奇質數之和。 從此,這道著名的數學難題引起了世界上成千上萬數學家的注意。200年過去了,沒有人證明它。哥德巴赫猜想由此成為數學皇冠上一顆可望不可及的「明珠」。
十:四色猜想 1852年,畢業於倫敦大學的弗南西斯.格思里來到一家科研單位搞地圖著色工作時,發現了一種有趣的現象:「看來,每幅地圖都可以用四種顏色著色,使得有共同邊界的國家著上不同的顏色。」 1872年,英國當時最著名的數學家凱利正式向倫敦數學學會提出了這個問題,於是四色猜想成了世界數學界關注的問題。世界上許多一流的數學家都紛紛參加了四色猜想的大會戰。 1976年,美國數學家阿佩爾與哈肯在美國伊利諾斯大學的兩台不同的電子計算機上,用了1200個小時,作了100億判斷,終於完成了四色定理的證明。四色猜想的計算機證明,轟動了世界。
⑻ 計算機十大經典演算法有哪些
再把子問題分成更小的子問題……直到最後子問題可以簡單的直接求解,逆著這個行進方向,從終點向始點計算,在選定系統行進方向之後,常比線性規劃法更為有效,由每個階段都作出決策,從而使整個過程達到最優化。所謂多階段決策過程,特別是對於那些離散型問題。實際上,動態規劃法就是分多階段進行決策,其基本思路是,原問題的解即子問題的解的合並
不好意思啊,就是把研究問題分成若干個相互聯系的階段,逐次對每個階段尋找某種決策,用來解決多階段決策過程問題的一種最優化方法,就是把一個復雜的問題分成兩個或更多的相同或相似的子問題:按時空特點將復雜問題劃分為相互聯系的若干個階段。字面上的解釋是「分而治之」動態規劃法[dynamic
programming
method
(dp)]是系統分析中一種常用的方法。在水資源規劃中,往往涉及到地表水庫調度、水資源量的合理分配、優化調度等問題,而這些問題又可概化為多階段決策過程問題。動態規劃法是解決此類問題的有效方法。動態規劃法是20世紀50年代由貝爾曼(r,使整個過程達到最優.
bellman)等人提出。許多實際問題利用動態規劃法處理,故又稱為逆序決策過程。
回溯法是一種選優搜索法,按選優條件向前搜索,以達到目標。但當探索到某一步時,發現原先選擇並不優或達不到目標,就退回一步重新選擇,這種走不通就退回再走的技術為回溯法,而滿足回溯條件的某個狀態的點稱為「回溯點」。
在計算機科學中,分治法是一種很重要的演算法
⑼ 誰有數學建模十大演算法的詳細介紹啊
1、蒙特卡羅演算法(該演算法又稱隨機性模擬演算法,是通過計算機模擬來解決問題的演算法,
同時可以通過模擬可以來檢驗自己模型的正確性,是比賽時必用的方法)
2、數據擬合、參數估計、插值等數據處理演算法(比賽中通常會遇到大量的數據需要處理,
而處理數據的關鍵就在於這些演算法,通常使用Matlab作為工具)
3、線性規劃、整數規劃、多元規劃、二次規劃等規劃類問題(建模競賽大多數問題屬於最優化問題,
很多時候這些問題可以用數學規劃演算法來描述,通常使用Lindo、Lingo軟體實現)
4、圖論演算法(這類演算法可以分為很多種,包括最短路、網路流、二分圖等演算法,
涉及到圖論的問題可以用這些方法解決,需要認真准備)
5、動態規劃、回溯搜索、分治演算法、分支定界等計算機演算法(這些演算法是演算法設計中比較常用的方法,很多場合可以用到競賽中)
6、最優化理論的三大非經典演算法:模擬退火法、神經網路、遺傳演算法
(這些問題是用來解決一些較困難的最優化問題的演算法,對於有些問題非常有幫助,
但是演算法的實現比較困難,需慎重使用)
7、網格演算法和窮舉法(網格演算法和窮舉法都是暴力搜索最優點的演算法,在很多競賽題中有應用,
當重點討論模型本身而輕視演算法的時候,可以使用這種暴力方案,最好使用一些高級語言作為編程工具)
8、一些連續離散化方法(很多問題都是實際來的,數據可以是連續的,而計算機只認的是離散的數據,因此將其離散化後進行差分代替微分、求和代替積分等思想是非常重要的)
9、數值分析演算法(如果在比賽中採用高級語言進行編程的話,那一些數值分析中常用的演算法比
如方程組求解、矩陣運算、函數積分等演算法就需要額外編寫庫函數進行調用)
10、圖象處理演算法(賽題中有一類問題與圖形有關,即使與圖形無關,論文中也應該要不乏圖片的,
這些圖形如何展示以及如何處理就是需要解決的問題,通常使用Matlab進行處理)
⑽ 20世紀的十大發明有哪些
二十世紀最具影響力的十大發明
一、內燃機:由於內燃機的出現,促成了交通工具的發展以及城郊化。同時也導致了污染。
二、噴氣式飛機:乘坐噴氣式飛機使人們出門旅行的時間大為縮短。整個世界的經濟也因此獲得迅速的增長。
三、通訊衛星:1945年,一位偉大的作家ArthurC.Clarke第一次在他的小說中提出了通訊衛星的構想。半個世紀後的今天,通訊衛星的使用已將全球通訊變為現實。
四、無線電廣播技術:從19世紀收音機發明開始,無線電廣播技術的迅猛發展並配以動畫和影像科技,已大大改變了我們的生活方式。盡管我們還不知道無線電廣播帶給我們的究竟是什麼,但我們無疑已成為了它的忠實聽(觀)眾。
五、雷達:雷達對電視的發明有著巨大的貢獻,因為,早期的雷達使用的就是陰極射線管。而且,雷達還幫助宇宙學家們搜尋遙遠的星系。
六、激光:沒有激光,現代通訊就將不復存在。
七、青黴素:青黴素的功效和它對社會的影響是無法比擬的。在影響力與實際功效方面唯一能與它相匹敵的也只有後來出現的避孕葯了。
八、綠色革命:所謂的"綠色革命"就是指人類為提高單位面積的糧食產量而採用的種種措施。人類的將來是否還將依靠這種方式已成為我們在這今後幾十年必然會面對的問題。但至少沒有"綠色革命",人類仍陷在飢餓的不幸之中。
九、材料技術:材料技術的發展與廣泛運用極大地改變了人們的日常生活。
十、計算機:裝配有晶體管,集成電路和微處理器的計算機帶動了數字科技的發展,使各種各樣的信息轉化為0和1的二進制形式成為可能。