본문 바로가기
반응형

배열3

[CS 노트] : Linked List에 대해서.. Linked List는 tree, graph 등 다른 자료 구조를 구현할 때 사용되는 기본적인 자료구조로Node 구조체로 이루어져있으며 이 Node는 다음 Node의 주소 값을 가지고 있다. Linked List는 물리적인 메모리에서는 비연속적으로 저장되자만 Node의 특성(다음 Node의 주소를 가지고 있음)을 통해 논리적인 연속성을 가지게 된다. Linked List는 데이터가 추가될 때 메모리를 할당한다. 즉, 메모리를 좀 더 효율적으로 사용할 수 있는 장점이 있다. Node는 다음 주소 값을 가지고 있는데 첫 번째 노드는 head라는 포인터로 가리키고 있고 마지막 노드가 가리키는 주소는 NULL을 표시한다. Array 처럼 메모리 연속성을 유지하지 않아도 되므로 메모리 사용이 자유로운데 다음 주소.. 2022. 3. 28.
[TIL] : 152 일일 배움을 위한 Today I Learned ! CS 노트 Dyanmic Array에 대해서 공부를 했다. 먼저 남에게 설명이 가능할 정도로 공부해 볼 예정이다. 2022.03.27 - [노트/CS 노트] - [CS 노트] : Dynamic Array에 대해서.. 멜론 리스트 만들기 프로젝트를 만들어 보고 있다. 깃허브에 올리면서 기록을 하고 있는데 전체 코드를 작성하지 못 했기 때문에 아직 블로그에 포스팅은 못 한다. 2022. 3. 27.
[CS 노트] : Dynamic Array에 대해서.. Dynamic Array는 저장 공간이 가득차면 가변적으로 사이즈를 조절하여 데이터를 저장하는 자료 구조로 저장 공간이 고정되어 있는 Static Array의 한계를 보안하기 위해 만들어졌다. 기존에 선언된 데이터 크기만큼 저장을 하다가 메모리를 초과하게 되면 resize가 발생되고 새롭게 확장된 크기의 배열을 생성해 데이터를 모두 옮긴다. 이와 같은 점이 장점으로 미리 사이즈를 고민할 필요가 없다. resize를 하는 대표적인 방법은 Doubling이 있다. 이 Doubling은 데이터를 추가하다 메모리가 초과하면 기존 크기의 두배 크기의 배열을 선언하고 데이터를 옮기는 방법이다. 기출로 대비하는 개발자 전공면접 [CS 완전정복] 을 참고해서 공부하였습니다. 2022. 3. 27.
반응형