본문 바로가기

분류 전체보기

(119)
[Java] 인터페이스 안에 필드, 메서드, 클래스 선언하기 Interface 안에 무엇을 선언할 수 있는지 확인해본다. 참고로 JDK 11 버전으로 작성한 코드이다. 인터페이스 안에는 아래 내용을 선언할 수 있다. 변수 메서드 enum class 1. 변수 인터페이스에 선언된 변수는 static 키워드, public 접근제어자에 관계없이 static final로 역할한다 1) 변수 //변수 선언 public int int1 = 0; int int2 = 1; 2) static 변수 //static 변수 public static String str1 = "test"; static String str2 = "test"; 3) final 변수(상수) //final 변수 선언 final String final1 = "test"; static final String fin..
html 기본 뼈대 html 구성 HTML test this is paragraph this is section this is footer
정렬 알고리즘5 - 퀵정렬(Quick Sort) 퀵정렬(Quick Sort) 작동방식 정렬할 피봇(기준값)을 정하고, 피봇을 기준으로 크기가 큰 그룹과 작은 그룹으로 나눈다. 나뉜 각 그룹에서 다시 피봇을 정하고, 피봇 기준으로 크기가 큰 그룹과 작은 그룹으로 나눈다. 그룹을 더이상 나눌 수 없을때까지 위 과정을 반복한다. 특징 명칭에서 알 수 있듯이 빠른 정렬 방법이다 분할 정복 알고리즘의 한 기법 퀵 정렬은 부분교환 정렬(Partition Exchange Sort)이라고도 불림. 요소간 비교하는 방식으로 정렬되는 방식 그룹 나누는 함수를 재호출 하는 즉, 재귀적으로 호출하는 방식이다. 임의의 피봇(기준값을 정한다. 꽤 빠른 정렬 방법에 해당한다. 그룹에서 어떤 요소를 피봇으로 정하는지에 따라 정렬의 성능이 결정된다. 데이터를 나열한 순서가 좋지 않..
정렬 알고리즘4 - 셸 정렬(Shell Sort) 셸 정렬(Shell Sort) 작동방식 정렬할 배열의 요소를 그룹으로 나눠 각 그룹별로 삽입정렬을 실시한 뒤 그룹을 합치면서 정렬을 반복하면서 요소의 이동횟수를 줄이는 방법 특징 삽입정렬의 단점은 보완하고 장점은 살린 정렬 방법 (삽입정렬의 단점은 삽입할 위치가 멀리 떨어진 경우 요소를 이동시키는 거리가 길다는 것이다. 삽입정렬의 장점은 정렬된 상태에 가까워질수록 정렬시키는 속도가 더욱 빨라진다는 것이다) 셸정렬은 그룹별로 미리 몇차례 정렬을 해둔뒤에 삽입정렬을 실시해 삽입정렬의 장점을 취하는 정렬방법이다. 셸정렬을 실시하면 정렬해야하는 횟수는 증가하지만 요소이동 횟수가 줄어들어 보다 효율적인 정렬이 가능하다. 정렬되는 모습 살펴보기 정렬할 요소는 [6, 2, 5, 3, 1, 7, 4, 8], 이렇게 숫..