알고리즘의 연대표
Timeline of algorithms다음 알고리즘 연대표는 알고리즘(주로 "수학 레시피")의 초기 단계부터의 개발을 개략적으로 설명한다.
중세 시대
- 이전 – '레시피'에 대해 쓰기(요리, 의식, 농업 및 기타 주제에 대해)
- c. 1700-2000 BC – 이집트인들은 두 숫자를 곱하기 위해 가장 먼저 알려진 알고리즘을 개발한다.
- c.1600 BC – 바빌로니아인들은 인수분해와 제곱근 찾기를 위해 가장 먼저 알려진 알고리즘을 개발한다.
- c.300 BC – 유클리드의 알고리즘
- c. 기원전 200년 – 에라토스테네스의 체
- 263 AD – Liu Hui에 의해 기술된 가우스
- 628 – 브라흐마굽타에 의해 기술된 차크라발라 방법
- c. 820 – Al-Khawarizmi는 그의 대수학에서 선형 방정식과 2차 방정식을 풀기 위한 알고리즘을 기술했다; 알고리즘이라는 단어는 그의 이름에서 유래했다.
- 825 – Al-Khawarizmi는 그의 논문 "Hindu Numero Indorum"에서 힌두-아랍 숫자 체계를 사용하기 위한 알고리즘인 Algorism을 기술했다.그것은 라틴어로 번역된 "Algoritmi de numero Indorum"에서 "알고리트미"라는 번역자가 저자의 알고리즘이 생겨났다.g "계산법"
- c. 850 – 암호화 및 암호[1] 해독 알고리즘을 포함하는 암호 메시지 복호화에 관한 원고에서 Al-Kindi(Alkindus)가 개발한 암호 분석 및 빈도 분석 알고리즘
- c. 1025 – Ibn al-Haytham (Alhazen)은 4승의 합에 대한 공식을 도출한 최초의 수학자이며, 차례로 그는 적분학의[2] 발전에 필수적인 적분력의 합에 대한 일반적인 공식을 결정하기 위한 알고리즘을 개발한다.
- c. 1400 – Ahmad al-Qalqashandi는 Subh al-a'sha에서 치환과 치환을 모두 포함한 암호 목록을 제공하고, 최초로 각 평문 문자에 대해 복수의 치환을 포함한 암호의 예를 제공한다.또, 암호 분석의 설명과 작업 예를 들어, 문자 빈도와 레테의 세트를 사용한다.한 단어로 함께 발생할 수 없는 rs
1940년 이전
- 1540 – Lodovico Ferrari가 4차 다항식의 근을 찾는 방법을 발견했습니다.
- 1545 – Gerolamo Cardano는 입방정식의 근을 구하는 Cardano의 방법을 발표했다.
- 1614 – John Napier가 로그를 사용하여 계산을 수행하는 방법을 개발합니다.
- 1671 – 아이작 뉴턴에 의해 개발된 뉴턴-라프슨 방법
- 1690 – 조셉 라프슨이 독자적으로 개발한 뉴턴-라프슨 방법
- 1706 – John Machin은 and에 대해 빠르게 수렴하는 역접선 급수를 개발하고 to를 소수점 100자리까지 계산합니다.
- 1789 – Jurij Vega는 Machin의 공식을 개선하여 places를 소수점 140자리까지 계산한다.
- 1805 – Carl Friedrich Gauss에 의해 알려진 FFT 유사 알고리즘
- 1842 – Ada Lovelace가 컴퓨팅 엔진 최초의 알고리즘을 작성함
- 1903 – Carle David Tolmé Runge가 제시한 고속 푸리에 변환 알고리즘
- 1926 – 보르시브카의 알고리즘
- 1926년 - 그레테[3] 헤르만이 제시한 일차 분해 알고리즘
- 1927년 – 하트리-정지 상태에서 양자 다체계를 시뮬레이션하기 위해 개발된 Fock 방법.
- 1934 – 보리스 들뢰네에 의해 개발된 들뢰네 삼각 측량
- 1936 – Alan Turing에 의해 개발된 추상 기계인 Turing machine, 그리고 다른 사람들과 함께 알고리즘의 현대적인 개념을 개발했습니다.
1940년대
- 1942 – G.C. Danielson과 Cornelius Lanczos가 개발한 고속 푸리에 변환 알고리즘
- 1945 – John von Neumann에 의해 개발된 병합 분류
- 1947 – George Dantzig에 의해 개발된 심플렉스 알고리즘
1950년대
- 1952 – David A에 의해 개발된 Huffman 부호화. 허프만
- 1953년 - 니콜라스 메트로폴리스에 의해 도입된 모의 아닐링
- 1954 – Harold H에 의해 개발된 Radix 정렬 컴퓨터 알고리즘. 시워드
- 1964 – Box – Muller 변환 - George Edward Pelham Box 및 Mervin Edgar Muller에 의해 발행된 정규 분포 숫자의 빠른 생성을 위한 변환.1934년 레이먼드 E. A. C. 페일리와 노버트 위너에 의해 독립적으로 미리 발견되었다.
- 1956 – Joseph Kruskal에 의해 개발된 Kruskal 알고리즘
- 1956 – R에 의해 개발 및 발표된 포드-펄커슨 알고리즘. 포드 주니어와 D. 풀커슨
- 1957 – Robert Prim이 개발한 Prim 알고리즘
- 1957 – Richard E에 의해 개발된 Bellman-Ford 알고리즘. 벨만과 L. R. 포드 주니어
- 1959 – Edsger Dijkstra에 의해 개발된 Dijkstra 알고리즘
- 1959 – Donald L.에 의해 개발된 쉘 종류. 셸
- 1959 – Paul de Casteljau가 개발한 De Casteljau 알고리즘
- 1959 – John G.F. Francis와 Vera Kublanovskaya가[4][5] 독자적으로 개발한 QR 인수분해 알고리즘
- 1959년 – 마이클 O. 라빈과 데이나 스콧이 NFA를 DFA로 변환하기 위한 라빈-스코트 파워셋 구축
1960년대
- 1960 – 카라츠바 곱셈
- 1961 – W가 개발한 CRC(사이클 용장성 검사). 웨슬리 피터슨
- 1962 – AVL 트리
- 1962 – C사가 개발한 QuickSort. A. R. 호어
- 1962년 - 잭 E가 개발한 브레센햄의 선 알고리즘. 브레센햄
- 1962 – David Gale과 Lloyd Shapley가 개발한 Gale-Shapley '안정적 결혼' 알고리즘
- 1964년 - J. W. J. 윌리엄스에 의해 개발된 힙소트
- 1964 – R. P. Fedorenko가 처음 제안한 멀티그리드 방법
- 1965 – Cooly –James Cooly와 John Tukey가 재발견한 Tukey 알고리즘
- 1965년 – 블라디미르 레벤슈테인(Vladimir Levenshtein)이 개발한 레벤슈테인 거리
- 1965 – Cocke –Kasami 타다오 독자 개발한 Young-Kasami(CYK) 알고리즘
- 1965년 - Bruno Buchberger에 의해 개발된 Gröbner 기반 계산을 위한 Buchberger 알고리즘
- 1965년 – 도널드 커누스에 의해 LR 파서가 발명됨
- 1966 – 음의 모서리를 가진 그래프에서 최단 경로를 위한 Dantzig 알고리즘
- 1967 – Andrew Viterbi가 제안한 Viterbi 알고리즘
- 1967년 - 코크Daniel H. Younger가 독자적으로 개발한 Younger-Kasami(CYK) 알고리즘
- 1968 – Peter Hart, Nils Nilsson 및 Bertram Raphael에 의해 기술된 A* 그래프 검색 알고리즘
- 1968 – Robert Henry Risch가 개발한 무한 통합을 위한 Risch 알고리즘
- 1969 – Volker Strassen에 의해 개발된 행렬 곱셈을 위한 Strassen 알고리즘
1970년대
- 1970년 – Yefim (Chaim) A에 의한 플로우 네트워크의 최대 플로우를 계산하는 Dinic 알고리즘.디니츠
- 1970 – Knuth – Bendix 완료 알고리즘은 Donald Knuth와 Peter B에 의해 개발되었습니다. 벤딕스
- 1970 – 준뉴턴 클래스의 BFGS 방법
- 1970 – 니들맨 -Saul B에 의해 발행된 운쉬 알고리즘. 니들맨과 크리스찬 D. 운슈
- 1972 – Edmonds – Karp 알고리즘은 Jack Edmonds와 Richard Karp에 의해 발표되었으며, 기본적으로 1970년의 Dinic 알고리즘과 동일합니다.
- 1972 – Ronald Graham이 개발한 Graham 스캔
- 1972 – 붉은색-검은색 나무와 B-트리가 발견됨
- 1973년 – Clifford Cocks가 발견한 RSA 암호화 알고리즘
- 1973 – R. A. Jarvis가 개발한 Jarvis 행진 알고리즘
- 1973 – Hopcroft-Karp 알고리즘은 John Hopcroft와 Richard Karp에 의해 개발되었습니다.
- 1974 – Pollard의 p-1 알고리즘은 John Pollard에 의해 개발되었습니다.
- 1974년 – Raphael Finkel과 J.L. Bentley가 개발한 쿼드트리
- 1975년 - John Holland에 의해 보급된 유전자 알고리즘
- 1975년 - John Pollard가 개발한 Pollard의 rho 알고리즘
- 1975 – Alfred V에 의해 개발된 Aho-Corasick 문자열 매칭 알고리즘. 아호와 마가렛 J. 코라식
- 1975 - 조지 E. 콜린스에 의해 개발된 원통형 대수 분해
- 1976 – Salamin-Brent 알고리즘은 Eugene Salamin과 Richard Brent에 의해 독립적으로 발견되었다.
- 1976 – Knuth-Morris-Pratt 알고리즘은 Donald Knuth와 Vaughan Pratt에 의해 개발되었으며 J. H. Morris에 의해 독립적으로 개발되었습니다.
- 1977 – Boyer – Moore 문자열 검색 알고리즘으로 문자열 발생을 다른 문자열로 검색합니다.
- 1977년 – Ron Rivest, Adi Shamir 및 Len Adleman에 의해 재발견된 RSA 암호화 알고리즘
- 1977 – Abraham Lempel과 Jacob Ziv가 개발한 LZ77 알고리즘
- 1977년 – Achi Brandt와 Wolfgang Hackbusch가 독자적으로 개발한 멀티그리드 방식
- 1978 – LZ78 알고리즘은 Abraham Lempel과 Jacob Ziv에 의해 LZ77에서 개발되었습니다.
- 1978 – 게오르크 브루언이 제안한 2제곱 알고리즘
- 1979년 - 레오니드 카치얀이 개발한 카치얀의 타원체 방법
- 1979 – Ross Quinlan이 개발한 ID3 의사결정 트리 알고리즘
1980년대
- 1980 – 사이클 검출을 위한 브렌트 알고리즘 Richard P. 브렌트
- 1981 – Carl Pomerance에 의해 개발된 2차 체
- 1981 – Smith – Waterman 알고리즘은 템플 F에 의해 개발되었다. 스미스와 마이클 S. 워터맨
- 1983년 – S. Kirkpatrick, C. D. Gelatt 및 M. P. Vecchi에 의해 개발된 모의 어닐링
- 1983년 - Leo Breiman 등에 의해 개발된 분류 및 회귀 트리(CART) 알고리즘.
- 1984 – Terry Welch가 LZ78에서 개발한 LZW 알고리즘
- 1984년 - Narendra Karmarkar가 개발한 카르마르카 내부점 알고리즘
- 1984 - Roy Wikramaratna에 의해 발견되어 개인적으로 사용됨.
- 1985년 – V가 독자적으로 개발한 어닐링 시뮬레이션. 서니
- 1985 - Roberto Car와 Michele Parrinello가 개발한 Car-Parinello 분자역학
- 1985년 – Sleator와 Tarjan에 의해 발견된 스플레이 나무
- 1986 – L. Blum, M. Blum 및 M. Blum이 제안한 Blum Shub. 쉬브
- 1986 – Andrew Goldberg와 Robert Tarjan의 푸시 리라벨 최대 흐름 알고리즘
- 1986년 - 반즈-N-body 문제의 빠른 근사 시뮬레이션을 위해 Josh Barnes와 Piet Hut에 의해 개발된 Hut 트리 방법
- 1987 – Leslie Greengard와 Vladimir Rokhlin이 개발한 고속 멀티폴 방식
- 1988 – John Pollard에 의해 개발된 특수 번호 필드 체
- 1989 - Roy Wikramaratna에 의해 발행된ACON PRNG
- 1989 – Leslie Lamport가 개발한 Paxos 프로토콜
1990년대
- 1990 – Carl Pomerance, Joe Buhler, Hendrik Lenstra 및 Leonard Adleman이 SNFS에서 개발한 일반 번호장 체
- 1990 – Don Coppersmith와 Shmuel Winograd가 개발한 Coppersmith-Winograd 알고리즘
- 1990 – 국립보건원의 Stephen Altschul, Warren Gish, Web Miller, Eugene Myers 및 David J. Lipman에 의해 개발된 BLAST 알고리즘
- 1991년 - Maurice Herlihy가 개발한 대기시간 없는 동기화
- 1992 – D가 제안한 독일-요즈사 알고리즘. 도이치와 리처드 요즈사
- 1992 – C4.5 알고리즘은 ID3 Decision Tree 알고리즘의 후속으로 Ross Quinlan에 의해 개발되었습니다.
- 1993 – Rakesh Agrawal과 Ramakrishnan Srikant가 개발한 Apriori 알고리즘
- 1993년 – David Karger의 연결 그래프의 최소 컷을 계산하는 Karger 알고리즘
- 1994 – Peter Shor가 개발한 Shor 알고리즘
- 1994 – 버로우즈 –Michael Burrows와 David Wheeler가 개발한 휠러 트랜스폼
- 1994 – Leo Breiman이 개발한 부트스트랩 어그리게이션(가방)
- 1995 – 최초의 실용적인 부스트 알고리즘인 AdaBoost 알고리즘은 Yoav Freund와 Robert Schapire에 의해 도입되었습니다.
- 1995 – 블라디미르 Vapnik과 Corinna Cortes가 소프트 마진 지원 벡터 머신 알고리즘을 발표했습니다.그것은 1992년 Boser, Nguyon, Vapnik 알고리즘에 소프트 마진 아이디어를 추가하며, 사람들이 SVM을 말할 때 주로 참조하는 알고리즘이다.
- 1995년 – Ukkonen의 접미사 트리 구축 알고리즘
- 1996년 - H. Murakami에 의해 임의의 짝수 컴포지트 크기로 일반화 된 브루운 알고리즘
- 1996 – Lov K에 의해 개발된 Grover 알고리즘. 그로버
- 1996 – 한스 도베르틴, 앙투아온 보셀라, 바트 프레넬이 개발한 RIPEMD-160
- 1997 - 마츠모토 마코토와 니시무라 타주키에 의해 개발된 의사 난수 발생기 메르센 트위스터
- 1998 – 페이지랭크 알고리즘은 Larry Page에 의해 발행되었습니다.
- 1998 – Andrew Tridgell에 의해 개발된 rsync 알고리즘
- 1999 – 제롬 H. 프리드먼이 개발한 구배 부스트 알고리즘
- 1999 – Bruce Schneier, John Kelsey 및 Niels Ferguson에 의해 설계된 Yarrow 알고리즘
2000년대
- 2000 – 하이퍼링크에 의한 토픽 검색 - Jon Kleinberg가 개발한 하이퍼링크 분석 알고리즘
- 2001 – 이고르 파블로프가 개발한 압축용 렘펠-지브-마코프 연쇄 알고리즘
- 2001 – 실시간 얼굴 검출을 위한 Viola-Jones 알고리즘은 Paul Viola와 Michael Jones에 의해 개발되었습니다.
- 2001 – DHT(분산 해시 테이블)는 학계 및 애플리케이션 시스템의 여러 사람이 개발
- 2001 – BitTorrent 최초의 완전 분산형 피어 투 피어 파일 배포 시스템 공개
- 2001 – Andrew Knyazev에 의한 대칭 고유치 문제의 극한 고유치를 찾는 LOBPCG 국소 최적 블록 사전 조건 공역 구배법
- 2002 – Manindra Agrawal, Neeraj Kayal 및 Nitin Saxena가 개발한 AKS 프라이머리 테스트
- 2002 – Girvan-Newman 알고리즘으로 복잡한 시스템 커뮤니티 검출
- 2002 – Packrat 파서는 Bryan Ford가 개발한 선형 시간 파싱에서 PEG(Parsing Expression Grammar)를 해석하는 파서를 생성하기 위해 개발되었습니다.
- 2009년 – Bitcoin 최초의 신뢰할 수 없는 분산형 암호화 시스템 공개
2010년대
- 2013 – Diego Ongaro와 John Ousterhout이 발행한 Raft 컨센서스 프로토콜
- 2015 – YOLO("You Only Look Once")는 효과적인 실시간 객체 인식 알고리즘으로, Joseph Redmon 등이 최초로 설명했습니다.
레퍼런스
- ^ Simon Sing, 코드북, 14-20
- ^ 빅터 J. 카츠(1995)."이슬람과 인도의 미적분 사상", 수학잡지 68(3), 페이지 163-174.
- ^ Ciliberto, Ciro; Hirzebruch, Friedrich; Miranda, Rick; Teicher, Mina, eds. (2001). Applications of Algebraic Geometry to Coding Theory, Physics and Computation. Dordrecht: Springer Netherlands. ISBN 978-94-010-1011-5.
- ^ Francis, J.G.F. (1961). "The QR Transformation, I". The Computer Journal. 4 (3): 265–271. doi:10.1093/comjnl/4.3.265.
- ^ Kublanovskaya, 베라 N(1961년)."완전한 고유치 문제 해결의 일부 알고리즘에".소련 전산 수학과 수학적 물리이다. 1(3):637–657. doi:10.1016(63)90168-X.또한 Zhurnal Vychislitel'noi Matematiki 나는 Matematicheskoi Fiziki[필기장 전산 수학과 수학적 물리학], 1(4), 페이지 555–570(1961년):에 발표되었습니다.