본문 바로가기
반응형

분류 전체보기14

[Java 정렬] Bubble Sort(버블 정렬), Insertion Sort(삽입 정렬), Selection Sort(선택 정렬) 정렬? 정렬은 특정 값을 기준으로 순서대로 데이터를 배치하는 방법을 말한다. 구현 난이도가 쉽고 속도가 느린 정렬로는 버블정렬, 삽입정렬, 선택정렬. 구현 난이도가 좀 더 어렵고 속도가 빠른 정렬로는 합병 정렬, 힙 정렬, 퀵 정렬, 트리 정렬. 하이브리드 정렬로는 팀 정렬, 블록 병합 정렬, 인트로 정렬. 기타 정렬 알고리즘으로는 기수 정렬, 카운팅 정렬, 셸 정렬, 보고 정렬 등이 있다. Bubble Sort(버블 정렬) 인접한 데이터를 비교하여 자리를 바꾸는 방식으로 알고리즘 복잡도는 O(n제곱) 이다. for (int i = 1; i arr[j + 1]) .. 2024. 2. 19.
[Java] Deque(덱/ 데크) 자료구조 Deque(덱/ 데크) - Doubly-Ended Queue의 줄임말로 Stack과 Queue를 합친 형태이다. - 양쪽에서 삽입과 삭제가 가능한 자료구조이다. - 용도에 맞게 일부 기능을 제한하여 변경이 가능하다. 입력 제한 데크(Scroll) - 한쪽의 입력을 제한한다. 출력 제한 데크(Shelf) - 한쪽의 출력을 제한한다. *ArrayDeque, LinkedBlockingDeque, ConcurrentLinkedDeque, LinkedList등의 클래스가 있다. Deque 값 추가 addFirst(), offerFirst() 덱의 앞쪽에 엘리먼트를 삽입한다. addFirst()는 용량 초과 시 예외(Exception)가 발생하고 offerFirst()는 용량이 있을 경우엔 true, 용량 초과 시.. 2024. 2. 19.