Divide and Conquer 관점에서 본 Merge Sort 포스팅 썸네일 이미지

Coding_Algorithm/DS_Algorithm

Divide and Conquer 관점에서 본 Merge Sort

Divide and Conquer 관점에서 본 Merge Sort 0. 개요 지난 글에 이어서 오늘은 Divide and Conquer approach에 대해서 알아보고, 나아가 Merge Sort에 대해서 알아보도록 하겠습니다. 1. Divide and Conquer 먼저 Divide and Conquer에 대해서 알아봅시다. 말 그대로 Divide(분할)한 뒤 Conquer(정복)하는 개념입니다. 가장 중요한 것은 Divide - Conquer - Combine의 순서로 진행된다는 점입니다. 이전 글이었던 Incremental approach와의 차이점에 대해서 이야기하자면, Incremental approach는 작게 문제를 나누어서 해결한 작은 문제를 기반으로 더 큰 문제를 풀어나간다면, 문제를 ..

2023.06.29 게시됨

Incremental approach로 본 Insert sort algorithm 포스팅 썸네일 이미지

Coding_Algorithm/DS_Algorithm

Incremental approach로 본 Insert sort algorithm

Incremental approach로 본 Insert Sort Algorithm 0. 개요 알고리즘을 구상할 때 여러 가지 접근 방법이 있겠지만, 크게 두 가지 approach에 대해서 다룰 예정이다. 첫 번째는 Incremental Approch이고, 대표적인 예시인 Insert Sort Algorithm에 대해서 알아볼 것이다. 1. Incremental Approach(증가적 도달) Incremental Approach란 위에서도 이야기했듯, 문제를 푸는 하나의 시각이다. 자세히 알아보자. GPT는 쪼개서 풀어내는 방법을 'Subproblems'라고 했는데, 추후 한 번 더 이야기하겠지만 작은 부분 문제를 순차적으로 해결하면서 전체적인 문제 해결을 추구하는 방법이다. 이는 작은 부분 문제를 독립적..

2023.06.28 게시됨

알고리즘 & Halting Problem 포스팅 썸네일 이미지

Coding_Algorithm/DS_Algorithm

알고리즘 & Halting Problem

알고리즘 & Halting Problem 0. 알고리즘이란? 다음은 위키백과에 수록되어있는 알고리즘의 정의이다. 알고리즘, 셈법은 수학과 컴퓨터과학, 전산언어학 등에서 사용되는, 문제 해결 방법을 정의한 일련의 단계적 절차이다. 알고리즘에 대해서 보기 전에, 한 가지 짚고 넘어가야 하는 점이 있다. 여기서 '문제'란 무엇일까? 특히 알고리즘에서 문제(Problem)을 논할 때는, Computational Problem을 논한다. 알고리즘에서의 Computational Problem이란 input과 output으로 구성됩니다. 그리고 이 input과 output 사이의 관계를 나타내는 것을 문제의 정의(definition)이라고 한다. 알고리즘의 문제에 대한 대표적인 예시는 정렬 문제(Sorting Pro..

2023.06.27 게시됨