최상의 답변
알고리즘을 이해하는 가장 좋은 방법은 한 번에 하나의 알고리즘을 해부 합니다.
여기서 목표는 더 큰 문제를 더 작은 관리하기 쉬운 문제로 나누어 해결하는 것입니다. 알고리즘을 분석하여 더 많이 이해할수록 더 나은 결과를 얻을 수 있습니다.
다음은 알고리즘 에 대한 대략적인 정의입니다.
알고리즘 은 <의 집합 입니다. / div> 지침 특정 작업을 수행하도록 설계되었습니다.
다음과 같은 많은 필드에는 말 그대로 수천 개의 알고리즘이 있습니다. 수학 및 컴퓨터 과학, 천문학, 생물 정보학, 지구과학, 언어학, 의학, 물리학, 통계 등의 주제를 모두 포함하는 계산 수학 !!
다음은 현재까지 매우 유용한 몇 가지 알고리즘입니다.
- 삽입 정렬 알고리즘
- 선택 정렬 알고리즘
- 버블 정렬 알고리즘
- 병합 정렬 알고리즘
- 빠른 정렬 알고리즘
- 바이너리 검색 알고리즘
- BFS (Breadth First Search) 알고리즘
- DFS (Depth First Search) alg orithm
- 최장 증가 하위 시퀀스
- Bellman–Ford 알고리즘
- Inorder, Preorder, Postorder Tree Traversals Algorithms
- Heap Sort 알고리즘
- 최소 스패닝 트리를 찾기위한 Kruskal의 알고리즘
- Dijkstra의 알고리즘
- Prim의 알고리즘
- Floyd–Warshall 알고리즘
- Johnson의 알고리즘
- Hopcroft–Karp 알고리즘
- Edmonds–Karp 알고리즘
- Ford–Fulkerson 알고리즘
- Karger의 알고리즘
- 유클리드 최단 경로 알고리즘
- 역 삭제 알고리즘
- A * 검색 알고리즘
- 역 추적 알고리즘
- 빔 검색 알고리즘
- D * 알고리즘
- Brute-force 검색 알고리즘
- SSS * 알고리즘
- F * 알고리즘
- 반복 심화 Depth First Search 알고리즘
- Bron–Kerbosch 알고리즘
- MaxCliqueDyn 최대 클리크 알고리즘
- Tarjan의 강하게 연결된 구성 요소 알고리즘
- Kosaraju “의 알고리즘
- 해밍 거리 계산 알고리즘
- 근접 이웃 검색 최적화 문제였던 KNN 또는 Post-Office 문제를 해결하기위한 획기적인 스파 스 분산 메모리 계산 알고리즘
갈 수 있습니다. 하지만, 당신은 요점을 얻습니다. 이 모든 것들이 약간 위협적인 것처럼 보일 수 있지만 처음에 하나를 선택하고 그것을 이해하는 데 시간을 할애하기로 선택한다면. 선택한 알고리즘을 이해를 위해 더 작은 섹션으로 나누면 알고리즘이 해결할 수있는 문제를 해결할 수있는 힘으로 동기를 부여합니다. 당신의 마음은 지성의 기쁨으로 가득 차 있습니다. 그리고 배운 것을 적용하여 해결할 수있는 실제 문제가 무엇인지 궁금합니다. 내가 이탈하고있는 것 같아요.
글쎄요, 그들 중 일부를 더 잘 이해하려면 자신이 한 사람인 것처럼 생각할 준비를해야합니다.
컴퓨터 과학 분야의 미래가 무한하게 짜여진 천으로 장식, 구슬 등 다양한 색상과 기타 특성을 지닌다면 알고리즘 모든 것을 하나로 묶는 스레드입니다.
여기 Donald Knuth의 인용문이 있습니다.
명령과 결정의 순서가 데이터 모음을 체계적으로 정리할 수있을 때 마법처럼 아름다운 일이 발생합니다. 패턴이나 숨겨진 구조를 발견 할 수 있습니다.
레시피를 따르려고 시도한 적이 있습니까? 알고리즘을 이해했다면 이제 컴퓨터가 알고리즘을 이해하게 할 때입니다.
컴퓨터 과학의 대부분의 문제는 수학적 문제입니다. 따라서 컴퓨터 과학 세계에서 혁신하려면 수학적 문제 해결을 이해해야합니다.
직면하게 될 모든 알고리즘에는 다음과 같은 몇 가지 속성이 있습니다.
- 유한성 : 알고리즘은 무제한 일 수 있지만 단계는 종료되어야합니다. 즉, 알고리즘의 단계 수는 항상 유한합니다.
- 정확성 : 확실성은 “모든 단계가 적절하고 정확하게 정의 됨”.
- 입력 또는 입력 : 이것은 꽤 자명합니다. 알고리즘이 입력을받지 않더라도 0 입력이라고 말할 수 있습니다.
- 출력 또는 출력 : 알고리즘에 최소 하나의 출력이 있어야한다는 점을 제외하면 입력 수와 같습니다.
- 효과 성 : 비교 알고리즘의 효과 또는 효율성을 비교하려면 알고리즘에 관련된 작업을 측정 할 수 있어야합니다. 일반적으로 알고리즘이 차지하는 시간과 공간은 알고리즘의 효율성에 대한 공정한 척도입니다.
다른 질문이 있으면 메시지를 남겨주세요!
다음 시간까지! 안전을 유지하고 조심하세요!
✍Ezaz Akhtar!
답변
프로그래밍 언어를 먼저 배우세요
좋은 시작. 코딩이 쉽고 많은 빌드 인 메서드가 포함되어 있습니다. 파이썬을 사용하고 Hckerrank 사이트에서 퍼즐과 같은 퍼즐을 풀기 시작하세요.
알고리즘을 사용하는 것이 가장 쉽게 이해할 수있는 방법입니다.