컬렉션 프레임워크
·
Backend/JAVA
자바는 널리 알려진 자료구조를 바탕으로, 객체들을 효율적으로 추가, 삭제, 검색할 수 있도록 관련된 인터페이스와 클래스들을 `java.util` 패키지에 포함시켜 놓음👉 이를 총칭하여 컬렉션 프레임워크라고 부름List와 Set은 객체를 추가, 삭제, 검색하는 방법에 있어서 공통점이 있기에 공통된 메소드만 따로 모아 Collection 인터페이스로 정의 & 상속Map은 키와 값을 하나의 쌍으로 묶어서 관리하는 구조로 List와 Set 과는 사용방법이 다름❓ 인터페이스로 구현한 이유처음에는 공유 코드가 없어서 인터페이스로 설계 했으나, 시간이 흐르며 공통 기능이 필요해졌고 이를 해결하기 위해 `default` 메서드가 도입 됨인터페이스 분류특징구현 클래스CollectionList순서를 유지하고 저장중복 저..
139. Word Break
·
PS/LeetCode
📜 문제문자열 `s`, 단어 사전 `wordDict`가 주어짐wordDict에 있는 단어들로 s를 분할할 수 있는지 확인 (≒ 단어들로 s를 만들 수 있는지 확인)wordDict내의 단어들은 여러번 재사용 가능생각 하기40분 정도 고민하다가 답을 봤다.나는 단어 사전에 있는 단어들의 첫글자를 key로 하여 Map에 저장 하여 접근하도록 했다.예시) wordDict =[cats, sand, dog, and, cat]Map: [a - and], [c - cat, cats], [d - dog ], [s- sand]dfs를 이용하여 접근했지만, 시간초과에 걸려서 틀렸다. (∵ 중복 탐색)이 문제를 풀기 위해선, 이전 값의 결과를 저장해 중복 탐색을 하지 않도록 `memoization`을 이용해야한다.`DFS`..