연결 리스트는 다음과 같이 구현할 수 있다. 1. 구조체 정의 typedef struct node { int number; struct node *next; } node; int main(void) { node *list = NULL; node 구조체를 정의하고 정수형 값이 저장되는 number, 다음 node의 주소를 가리키는 포인터 next를 지정한다. node 포인터 list를 정의한다. node를 가리키게 될 포인터이다. list는 아직 어디도 가리키지 않고 있기 때문에 NULL로 초기화한다. 2. node 생성과 주소 연결 node *n = malloc(sizeof(node)); if (n == NULL) { return 1; } n->number = 1; n->next = NULL; 먼저, 새..

연결 리스트는 데이터 구조 중에 하나로, 고정되어있는 배열과 달리 중간중간 비어있는 메모리에 값을 저장하고 바로 옆에 그 다음 값의 메모리 주소(포인터)를 함께 가진다. 메모리를 효율적으로 사용할 수 있지만 메모리를 두 배로 가지게 된다. 배열처럼 연속적으로 저장되진 않지만 다음 값의 메모리 주소만 알면 값을 읽어들일 수 있다. 1이 저장되고 바로 옆에 2를 가리키는 주소를 함께 가진다. 2는 3의 주소를 함께 가진다. 3 다음은 없기 때문에 널 포인터를 가진다. 연결 리스트는 아래와 같은 구조체로 정의할 수 있다. typedef struct node { int number; struct node *next; } node; node라는 이름의 구조체는 number 와 *next 두 개의 필드를 정의한다...
- Total
- Today
- Yesterday
- CSS
- 선택자
- 구조분해할당
- 폼
- Big Ω
- CSSOM
- form
- 선형검색
- 프로젝트
- Dom
- 연결리스트
- sr-only
- 포인터
- malloc
- HTML
- 구조체
- pseudo
- Typography
- 동기처리
- vanillajs
- 함수
- intersectionObserver
- float
- RenderTree
- 비구조화할당
- 이벤트위임
- valgrind
- overflow
- 문자열
- capturing
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |