코딩테스트6 [문법] HashMap 사용하기 코딩테스트를 준비하면서 내림차순으로 정렬하고, HashMap에서 키만 배열에 담아 반환하는 코드를 구현하였다. HashMap result = new HashMap()를 정의하고 이에 저장된 값을 반환한다고 가정하면 코드는 아래와 같았다.return result.entrySet().stream().sorted((o1, o2) -> Double.compare(o2.getValue(), o1.getValue()).mapToInt(HashMap.Entry::getKey).toArray(); entrySet()Map에서 모든 Entry(Key - Value 쌍)을 가져와 Set 객체로 반환함반복문을 이용하여 각 Entry에 순차적으로 접근 할 수 있음 sorted((o1, o2) -> Double.compare.. 2024. 7. 30. [Java] Arrays 클래스 학습을 하다 자료구조를 탐색할 때 Arrays 클래스를 사용하는 것을 보고 Arrays 클래스와 메소드에 관해 알아보고 정리를 해야겠다는 생각이 들었다. Arrays 클래스는 항목 정렬, 검색, 비교와 같은 메소드들을 제공한다. 모든 메소드는 static 메소드이므로 Arrays 클래스로 바로 사용 가능하다. 1. Arrays 메소드 - Arrays.toString(배열) 배열을 출력한다. - Arrays.sort(배열) 오름차순 정렬을 한다. - Arrays.equals(a, b) 배열 a와 b가 같으면 true, 다르면 false를 리턴한다. - Arrays.deepEquals(a, b) 두 배열의 깊은 비교 -> 다차원 배열일 경우 사용한다. - Arrays.binarySearch(배열, 찾는 값).. 2023. 10. 17. [Java] Stack & Queue 이번에도 코딩테스트 준비를 하다가 스택과 큐를 사용한 문제들을 구현하게 되었는데 대학교 때 배웠던게 조금씩 떠올랐다. 그래서 스택과 큐에 대한 내용을 정리해보려고 한다. Stack은 LIFO 구조로 마지막에 저장한 데이터를 가장 먼저 꺼낸다. Queue는 FIFO 구조로 먼저 들어간 데이터를 먼저 꺼낸다. 1. Stack의 메서드 - empty() Stack이 비어있는지를 반환해준다. - peek() 맨 위에 저장된 객체를 반환해준다. Stack에서 객체를 꺼내지는 않는다. - pop() 맨 위에 저장된 객체를 반환해준다. (꺼낸다) - push() Stack에 객체를 저장한다. - search Stack에서 주어진 객체를 찾아 그 위치를 반환하고, 못찾으면 -1을 반환한다. (위치는 1부터 시작) 2... 2023. 10. 16. [Java] HashMap, TreeSet 이번에도 코딩테스트를 위해서 알고리즘 공부를 하다가 사용한 몇 가지들을 정리하고자 한다. 이번 강의에서는 HashMap과 TreeSet을 사용하여 코드를 구현했다. HashMap은 그래도 종종 사용해왔었는데 TreeSet은 사용해 본 경험이 별로 없는 것 같다. 1. HashMap HashMap이란 Key와 Value가 짝을 이루어 데이터를 저장하는 것이다. key 값으로 데이터의 저장위치를 결정하고, 이를 통해 특정 데이터의 저장위치를 해시함수를 통해 알 수 있기 때문에 데이터의 추가, 삭제, 검색이 빠르다. - 메서드 1) 데이터 추가 - put(key, value) : key와 value 저장 만약 입력되는 key 값이 HashMap 내부에 존재한다면 기존의 값은 새로운 값으로 대체된다. 2) 데이.. 2023. 10. 13. 이전 1 2 다음