본문 바로가기

Programming25

[JAVA] Map과 HashMap의 차이 Map과 HashMap의 차이 데이터를 저정하고 관리할 때, 키와 값을 쌍으로 데이터를 저장하는 구조가 있다. 이를 표현하는 인터페이스가 Map. 이 인터페이스를 구현한 클래스가 HashMap이다. Map 인터페이스 키(key)와 값(value)를 하나의 쌍으로 저장하는 컬렉션 클래스를 구현하는 데 사용 - 키는 중복 x, 값은 중복 허용 Map 인터페이스를 구현한 클래스 : Hashtable, HashMap, LinkedHashMap, SortedMap, TreeMap, ... HashMap 클래스 Map 인터페이스를 구현한 클래스, 해시 테이블을 이용하여 키와 값을 저장 해싱을 사용하기 때문에 많은 양의 데이터를 검색하는 데 뛰어나다. 해싱 해시함수를 이용하여 데이터를 해시테이블에 저장하고 검색하는 .. 2024. 3. 8.
[JAVA] Optional<> 이 뭘까? Optional Generic 클래스로 T타입의 객체를 감싸는 래퍼 클래스로서, 최종 결과를 그냥 반환하는 게 아니라 Optional 객체에 담아서 반환 Why? 왜 쓸까? 반환된 결과가 null인지 매번 if문으로 체크하는 대신 Optional에 정의된 메서드를 통해 간단히 처리 가능 if문 없이 NullPointerException 발생x 간결, 안전한 코드 Wrapper Class 자바의 자료형 : 기본 타입 | 참조 타임 기본 타입 : char, int, float, double, boolean ... 참조 타입 : class, interface, ... 기본 타입의 데이터를 객체로 표현해야 할 때가 존재 -> 래퍼 클래스 사용! 모든 기본타입은 값을 갖는 객체 생성 가능 (포장 객체) -> 기본.. 2024. 3. 7.
[프로그래머스] 폰켓몬 문제 연구실에 총 N 마리 중 N / 2 가져가도 됨 - 종류에 따라 번호 붙임 - 최대한 많은 종류를 갖길 원함 배열 종류 번호 : nums 총 길이 N : 1 이상 1만 이하 자연수, 짝수 종류 번호 : 1 이상 20만 이하 자연수 @ 폰켓몬 종류 최댓값 생각 경우의 수로 나눌까? 1) 중복 다 제거 => N과 동일 (i.e. 중복 x) => N/2 2) 중복 다 제거 => 절반 값과 같거나 이상 => N/2 3) 중복 다 제거 => 절반 이하의 값 => 나머지는 이미 set에 있는 번호이므로 번호 종류의 최댓값은 set에서 고르는 것과 동일 도출 set 사용 set에서 N/2만큼 뽑으면 됨 #include #include using namespace std; int solution(vector nu.. 2024. 3. 7.
[프로그래머스] 기능개발 문제 [기능 개선 작업] 각 기능 목표 : 100% - 개발 속도 모두 다름 - 뒤에 기능은 앞이 완료돼야 배포됨 정수 배열 배포 순서 : progresses with 작업 진도 개발 속도 : speeds 작업 수 k=1; 큐는 10, 1, 1, 20, 1되고 10은 5일보다 크니까 반복문 끝 k가 1이니 answer에 1추가 첫 값이 10이니 오늘 5일 보다 큼 => 오늘은 10일이 됨 while(오늘과 같으니) => k=1; 큐는 1, 1, 20, 1되고 1은 10보다 작으니 k=2; 큐는 1, 20, 1되고 1은 10보다 작으니 k=3; 큐는 20, 1되고 반복문 끝 k=3이니 answer에 3추가 첫 값이 20이니 오늘 10일보다 큼 => 오늘은 20일이 됨 while(오늘과 같으니) => k=1.. 2024. 3. 7.
728x90