어떤 알고리즘이 가장 자주 사용됩니까?
답변 당 하나의 알고리즘을 작성하고 답변을 짧게 유지하십시오 (한 줄 또는 두 줄).
어떤 알고리즘이 가장 자주 사용됩니까?
답변 당 하나의 알고리즘을 작성하고 답변을 짧게 유지하십시오 (한 줄 또는 두 줄).
답변:
고속 푸리에 변환은 실제 컴퓨터 시스템에서 하루에 대부분의 시간에 해결되는 알고리즘 문제입니까? 가까워 야합니다. 그래서 Cooley-Tukey FFT 알고리즘을 추천하겠습니다 .
곱셈.
아마도 가장 오래되지 않은 가장 오래된 알고리즘 중 하나이며 FFT보다 더 자주 해결되는 문제 일 것입니다.
Dijkstra 및 Bellman-Ford 최단 경로 알고리즘. 있다 적어도 각 AS 중 하나를 링크 상태 라우팅 프로토콜 (다 익스트라) 또는 거리 벡터 라우팅 프로토콜 (벨맨 - 포드)를 실행하는 2010 년으로 인터넷에 35,000 자율 시스템 (AS) 활성을. 하나의 AS 내에있는 라우터는 일반적으로 몇 분마다 주기적으로 테이블을 업데이트합니다 (예 : 10).
따라서 하루에 Dijkstra & Bellman-Ford 실행 횟수는 5 백만 이상입니다. 그리고 그것은 라우터에서만 나옵니다.
Google지도에서 가장 짧은 경로 계산 및 10 배를 쉽게 계산할 수있는 계산은 포함하지 않았습니다. 하루에 50 억 건의 집행이 이루어지지는 않습니다.
가장 많이 사용되는 알고리즘은 모든 RAM 액세스에 표시되므로 패리티 검사 (또는 CRC 또는 일종의 오류 수정 코드)라고 생각합니다.
심플 렉스 알고리즘 -이것이 여전히 최고의 내부 포인트 방법과 경쟁하지 않습니까? 그렇다면 많이 사용해야합니다.
보다 일반적으로 이론적이고 실질적인 아이디어가있는 아이디어 에 대해서는 Kanellakis 상 수상자 를 살펴보십시오 .
현재의 TCP 구현에서 사용되는 알고리즘보다 더 널리 사용되는 알고리즘 , 즉 혼잡 방지 , 빠른 재전송 을 생각하기는 어렵습니다 . 그것은 알고리즘의 기준에 맞는 것을 결정하는 방법에 달려 있지만 ...
가우시안 제거 이것은 여전히 실제로 사용됩니까? 선형 시스템을 해결하기 위해 가장 자주 사용되는 것으로 대체하지 않으면 ...
이 응답은 실제 CPU주기와 관련하여 "가장 자주"해석됩니다.
70 년대에 컴퓨팅을 배웠을 때 나는 대다수의 컴퓨터 (읽기 : 메인 프레임)주기가 분류에 전념했다는 것을 기억합니다. 비즈니스 응용 프로그램에는 분석 및보고를위한 광범위한 정렬이 필요합니다. 나는 그것이 크게 변했다고 생각하지는 않지만 전자 메일, 워드 프로세싱 등과 같은 다른 응용 프로그램의 출현은 혼합을 변경해야합니다. 이러한 정렬은 일반적으로 하위 정렬을 만들기 위해 연속 된 필드를 정렬해야하기 때문에 빠른 정렬이 아닌 안정적인 정렬입니다.
엄밀히 말하면, 가장 자주 사용되는 알고리즘은 의심의 여지없이 다른 일이 일어나지 않을 때 Windows 시스템 대기 프로세스에 의해 실행되는 모든 것입니다. ;-).
리드 솔로몬과 같은 오류 수정 알고리즘.
http://en.wikipedia.org/wiki/Error-correcting_code#List_of_error-correcting_codes http://en.wikipedia.org/wiki/Reed%E2%80%93Solomon_error_correction
동적 프로그래밍 .
DP는 지금까지 조사에서 인용 된 다른 알고리즘보다 "더 자주"사용된다고 생각합니다. 나는 알고리즘 의 특정 구현이 몇 번이나 호출되었는지가 아니라, 사소한 알고리즘 개념이 실제의 프로그래머에 의해 얼마나 자주 구현 되는지에 대해 "더 자주"추론한다 .
DP는 다목적이며 많은 얼굴을 가지고 있습니다. 때로는 무의식적으로 그것을 사용하고 나중에 DP를하고 있음을 깨달았습니다.
물론 동적 프로그램보다 훨씬 일반적인 것이 있지만 대부분 데이터 구조 (배열, 링크 된 목록, 해시)입니다.