알고리즘 (3) 썸네일형 리스트형 나동빈 실전 알고리즘 5강 - 퀵정렬(Quick Sort) 다음의 숫자들을 오름차순으로 정렬하는 프로그램을 작성하세요 1 10 5 8 7 6 4 3 2 9 퀵정렬은 대표적인 분할정복 알고리즘중에 하나이다. 분할정렬이란 하나의 특정한 값을 기준으로 양 쪽을 나눠서 정렬하는 것이다. 퀵정렬은 이런 특정한 값을 토대로 두 개의 작은 문제를 푸는 방식으로 해결해 나가는 것이다. blog.naver.com/ndb796/221226813382 5. 퀵 정렬(Quick Sort) 지난 시간까지 다루었던 선택 정렬, 버블 정렬, 삽입 정렬 알고리즘은 모두 시간 복잡도 O(N^2)을 가지는... blog.naver.com 자세한 설명은 나동빈 블로그에서 확인할수 있다. package excercise; public class algorithm { static void quick.. 나동빈 실전 알고리즘 4강 - 삽입 정렬(Insertion Sort) 다음의 숫자들을 오름차순으로 정렬하는 프로그램을 작성하세요 1 10 5 8 7 6 4 3 2 9 이번에는 삽입정렬을 이용하여 다음의 숫자들을 오름차순으로 정렬해보자. 삽입정렬은 앞에서부터 차례대로 봤을 때 적절한 위치에 숫자를 삽입해주는 정렬을 말을한다. 1이 선택되었을때는 가장 작기때문에 10부터 살펴본다. 10은 앞에 있는 숫자들을 봤을때 1 양 옆중에 자신이 들어갈 위치가 오른쪽에 위치해야한다. 5는 앞에 있는 숫자들을 봤을 때 1과 10 사이 중에 1과 10 사이에 들어가면 되므로 1 5 10으로 위치한다 8은 앞에 있는 숫자들을 봤을 때 1과 5와 10 사이 중에 5와 10 사이에 들어가면 되므로 1 5 8 10으로 위치한다. 이렇게 해당 숫자가 선택적으로 자리를 골라서 자리하게 되는 프로그램을.. 나동빈 실전 알고리즘 3강 - 버블 정렬(Bubble Sort) 다음의 숫자들을 오름차순으로 정렬하는 프로그램을 작성하세요 1 10 5 8 7 6 4 3 2 9 이번에는 버블 정렬(Bubble Sort)로 다음 숫자들을 오름차순으로 정리해보려고한다. 버블 정렬이란 이웃한 두 숫자를 비교하여 큰 수를 뒤로 보내는 정렬인데 확실히 듣기만해도 비효율적으로 보인다. 그럼 버블 정렬 프로그램을 작성해보자. package excercise; public class algorithm { public static void main(String[] args) { int temp = 0; int arr[] = {1, 10, 5, 8, 7, 6, 4, 3, 2, 9}; for(int i = 0; i < arr.length; i++) { for(int j = 0; j < (arr.leng.. 이전 1 다음