목록자료구조 (3)
막무가내 삽질 블로그
LinkedList란 무엇이고 어떤 구조로 되어있으며 공부해보고 러프하게 구현해 봤다. https://imwj.notion.site/Linked-List-fd3e0ca6659e4d9e8a6b4bee8bf558a7
자료구조에 대해 간단하고 빠르게 정리한다. 패캠, doit자료구조를 본 내용으로 정리했다. 배열? = 같은 자료형의 변수로 이루어진 구성요소가 모인 것이다. 배열의 구성요소는 자동으로 0으로 초기화 되는 규칙이 있다. 배열의 장점 -구현이 쉽다. -인덱스를 이용한 접근이 가능하기 떄문에 빠른 성능을 기대할 수 있다. -참조를 위한 추가적인 메모리 할당이 필요 없다. 배열의 단점 - 자료의 삽입과 삭제에 비효율적이다. 삽입과 삭제 시 다음 항목의 모든 요소를 이동시켜야한다. - 크기를 바꿀 수 없다. - 메모리의 재사용이 불가능하다. 배열을 사용해 최댓값 구하기 fun main(args: Array) { val sc = Scanner(System.`in`) println("키의 최대값을 구합니다.") pr..
Collection 이란 ? - 여러 원소들을 담을 수 있는 자료구조를 뜻함 ※ 자료구조? 자료를 효율적으로 이용할 수 있도록 컴퓨터에 저장하는 방법 핵심 인터페이스 1. List - 특징 : 순서가 있는 데이터의 집합, 데이터의 중복을 허용 2. Set - 특징 : 순서를 유지하지 않는 데이터의 집합, 데이터의 중복을 허용하지 않는다. 3. Map - 특징 : 순서는 유지되지 않으며, 키는 중복을 허용하지 않고, 값은 중복을 허용한다. ArrayList - 장점 : 배열의 크기를 임의로 변화시킬 수 있고, 타입을 직접 설정할 수 있음 - 단점 : 데이터의 추가, 삭제에 시간이 많이 걸림 ※느린 이유 : ArrayList는 배열 방이 다 차면 배열의 크기를 두배로 늘림 두 배 큰 크기의 새로운 배열을 선..