LeetCode는 해외 코딩테스트 사이트으로 문제 풀이 완료 후 Run Time이나 Memory 점유율 같은 정보를 주기 때문에 좋은 사이트이다. 단점으로는 예시 언어로는 Java 뿐이며, 문제 언어도 메이저급만 지원된다. 무료만으로 충분히 좋은 것이 많지만 부분 유료 결제가 존재하며, 자료가 타 사이트(Programmers, Hacker Rank 등) 비해 적은 수준이다.

Learn 챕터 부터는 leetcode의 무료 강의 내용이며 그 전에는 여러 자료 구조의 정의 및 차이점을 기술한다.

Data Structure

선형 자료구조는 데이터가 선형으로 연결되어 있는 자료구조입니다. 선형 자료구조의 예로는 다음과 같은 것들이 있습니다.

비선형 자료구조는 데이터가 선형으로 연결되어 있지 않은 자료구조입니다. 비선형 자료구조의 예로는 다음과 같은 것들이 있습니다.

Linear 선형 자료구조

배열(Array)

배열은 데이터가 메모리 공간에 연속적으로 저장되는 자료구조입니다. 배열은 데이터를 효율적으로 저장하고 검색하기 위해 사용됩니다.

배열은 다음과 같은 특징을 가지고 있습니다.