1. 문제https://leetcode.com/problems/contains-duplicate-ii/?envType=study-plan-v2&envId=top-interview-150 2. 요구 사항1) 정수 배열 nums와 정수 k가 주어진다.2) nums에는 서로 다른 i, j 인덱스가 있고, abs(i - j) 를 만족하면 true를 반환한다.3) 조건에 맞지 않을 경우에는 false를 반환한다. 3. 핵심 아이디어1) 슬라이딩 윈도우 + Set 슬라이딩 윈도우는 최근 k개의 값만 저장하는 것이 목표이다. nums 배열을 순회하면서, 최근 k개 이내의 값을 Set에 저장한다. Set는 중복을 허용하지 않기 때문에, 값이 이미 들어있으면 중복이라는 뜻이다.k거리 이내에서 중복이 발생한 것이기..
1. 컬렉션 (Collcetion)컬렉션은 여러 개의 데이터를 한 번에 관리할 수 있는 자료 구조로컬렉션을 사용하면 여러 데이터를 효율적으로 저장하고 관리할 수 있습니다. Dart에는 대표적을 List, Set, Map이 있습니다. 2. 리스트(List) - 순서를 가진 친구들 👥 리스트는 순서가 있는 데이터의 집합으로 배열이라고도 불립니다.순서가 있기에 인덱스를 통해 요소에 접근할 수 있어요.List [변수 이름] = [요소];List fruits = ['사과', '바나나', '딸기'];print(fruits[0]); // 사과 변수를 선언할 때는 var로도 선언할 수 있는데요!물론 리스트도 var로 선언할 수 있습니다. 그리고 final과 const로도 변수를 선언한다는 것 기억하시나요?만약, ..
1. 컬렉션 (Collection) 컬렉션은 여러 요소를 함께 저장하고 구성할 수 있는 데이터 구조이다. 쉽게 말해 배열이라고 생각하면 될 것이다. 하지만, 크기가 고정된 배열과 달리 컬렉션은 크기가 고정되어 있지 않다. 즉, 컬렉션은 동적으로 요소 수에 따라 확장되거나 축소될 수 있다. 컬렉션은 가변(mutable)과 불변(immutable), 두 가지 성격을 가지고 있다. 1) Mutable (변경 가능) 변경 가능한 컬렉션은 생성 후 수정이 가능하다. 추후, 필요에 따라 요소를 추가, 제거 또는 수정할 수 있다. 2) Immutable (변경 불가능) 이름에서 알 수 있듯, 생성되면 수정할 수 없는 컬렉션이다. Mutable과 달리, 추가, 제거 또는 변경할 수 없다. 어느 것을 쓰는 게 좋냐는 질..