문제 › 094

094. 간단 정렬 비교기

Hard 바이브코딩 MCPAlgorithmSort
문제 설명
[문제] 정렬 알고리즘을 직접 구현해보는 학습용 MCP 서버를 구현한다. 같은 "오름차순 정렬"이라도 방법은 여러 가지다. 이 서버는 세 가지 고전 정렬을 각각 손으로 구현해 같은 결과를 내도록 한다(목적은 알고리즘 학습). - 버블 정렬(bubble sort): 이웃한 두 원소를 비교해 자리를 바꾸기를 반복. 느림(O(n^2)). - 머지 정렬(merge sort): 절반씩 나눠 정렬한 뒤 합치기. 빠름(O(n log n)). - 퀵 정렬(quick sort): 기준값을 정해 작은 것/큰 것으로 가르기를 반복. 평균 빠름(O(n log n)). 세 함수 모두 입력 배열을 오름차순으로 정렬한 새 배열을 반환한다. [구현할 함수] - bubble_sort(array: array<int>) -> array<int> 버블 정렬로 오름차순 정렬한 새 배열을 반환한다. - merge_sort(array: array<int>) -> array<int> 머지 정렬로 오름차순 정렬한 새 배열을 반환한다. - quick_sort(array: array<int>) -> array<int> 퀵 정렬로 오름차순 정렬한 새 배열을 반환한다. [입력·상태] 별도의 상태를 유지하지 않는다. 입력은 정수 배열이다. [제약] - 입력과 반환은 정수 배열이다. - 세 함수의 결과는 모두 동일(오름차순)하다. 중복 값도 그대로 유지한다. - 언어에 내장된 정렬 함수에 의존하지 말고 알고리즘을 직접 구현한다. [예시] bubble_sort([5, 2, 9, 1, 5, 6]) -> [1, 2, 5, 5, 6, 9] merge_sort([3, 1, 4, 1, 5, 9]) -> [1, 1, 3, 4, 5, 9] quick_sort([8, 7, 6, 5, 4, 3, 2, 1])-> [1, 2, 3, 4, 5, 6, 7, 8]
로그인하고 풀기 AI가 자동 채점하고 즉시 정답·해설을 알려줘요. 무료.