본문 바로가기
728x90
반응형

Club/99클럽 코테 스터디 2기28

99클럽 코테 스터디 32일차 TIL Stream method 1 Stream methodHashMap의 값을 정렬하는 과정에서 많은 메서드가 쓰여서 정리해 본다.주로 Stream Class의 method들이다.  Map map = new HashMap(); map.put(1, 3);map.put(2, 2);map.put(3, 5);map.put(4, 1);map.entrySet().stream() .sorted((v1, v2) -> v2.getValue().compareTo(v1.getValue())) .limit(k) .mapToInt(Entry::getKey) .toArray(); 1. sorted(Comparator c)와 compareTo().sorted((v1, v2) -> v2.getValue().compareTo(v1).getValu.. 2024. 6. 20.
99클럽 코테 스터디 31일차 TIL 병합 정렬 구현 병합 정렬 구현정렬해야 할 리스트를 계속 분할하여 최대한 작게 쪼갠 후, 부분 리스트에서 인접한 원소들끼리 비교하여 정렬하는 방식정렬 방법 주어진 리스트를 절반으로 분할하여 부분 리스트로 나눈다. (Divide : 분할) 해당 부분 리스트의 길이가 1 이 아니라면 1번 과정을 되풀이한다. 인접한 부분 리스트끼리 정렬하여 합친다. (Conqure : 정복)시간 복잡도 O(NlogN) 최선, 평균, 최악 모두 같다.구현import java.util.Arrays;public class MergeSort { public static int[] answer, temp; public static void main(String[] args) { solution(5, new int[]{5, 4.. 2024. 6. 19.
99클럽 코테 스터디 30일차 TIL 병합 정렬 병합 정렬분할과 정복 방식을 사용해 데이터를 분할하고 분할한 값들을 정렬하며 합치는 알고리즘분할 정복? -> 문제를 나눌 수 없을 때까지 나누어서 각각을 풀면서 다시 합병하여 문제의 답을 얻는 알고리즘정렬해야 할 리스트를 계속 분할하여 최대한 작게 쪼갠 후, 부분 리스트에서 인접한 원소들끼리 비교하여 정렬하는 방식정렬 방법 주어진 리스트를 절반으로 분할하여 부분 리스트로 나눈다. (Divide : 분할) 해당 부분 리스트의 길이가 1 이 아니라면 1번 과정을 되풀이한다.반드시 2개의 부분 리스트로 나눌 필요는 없다. 인접한 부분 리스트끼리 정렬하여 합친다. (Conqure : 정복)병합할 때는 투 포인터 개념을 사용한다.각 부분 리스트의 맨 앞 원소부터 비교를 진행한다.각 부분 리스트는 이미 오름차순 .. 2024. 6. 18.
99클럽 코테 스터디 29일차 TIL 순열과 조합 순열과 조합매번 헷갈리는 순열과 조합을 정리해 본다. 순열서로 다른 n개의 사물 중에서 r개를 순서에 상관하여 선택하는 경우의 수를 구하는 것조합서로 다른 n개의 사물 중에서 r개를 순서에 상관없이 선택하는 경우의 수를 구하는 것중복 순열n개의 사물 중에서 중복을 허용하여 r개를 순서에 상관하여 선택하는 경우의 수를 구하는 것중복 조합n개의 사물 중에서 중복을 허용하여 r개를 순서에 상관없이 선택하는 경우의 수를 구하는 것 느낀 점고등학생 때 배우고 다시 안 할 줄 알았는데, 또 만나게 되었다. 그때 보다 더 열심히 외워야겠다.다음에 학습할 것순열, 조합 직접 구현하기순열, 조합, 중복 순열, 중복 조합에 대해 배웠다. 2024. 6. 17.
728x90
반응형