연결리스트

이봐요이상해씨·2021년 6월 4일
0

42서울

목록 보기
1/4
  1. 각 노드가 데이터와 포인터를 갖고 한줄로 연결되어 있는 방식으로 데이터를 저장하는 자료구조
  2. 연결리서트의 각 자료를 노드라고한다
  3. 동적메모리 할당하여 노드 생성
  4. 각 노드 포인터 변수에 다음 노드 메모리주소 저장, 마지막 노드는 null 포인터 반환
  5. 헤드노드는 왜 이중포인터인가 :
    주소를 저장하는 포인터의 주소를 받기위해 이중포인터로 받어야 한다.

typedef struct node
{
int value;
node_t* next;
} node_t

value : 데이터
node_t *next : 구조체 포인터

  1. 헤드 노드 선언

1) 데이터 직접저장 안하는 방법
head -> next = first_node(첫번쨰 노드를 가리킴)

2) 첫번째 노드 자체를 head로 지정
*head = first_node

  1. 노드 추가
    1) 맨앞에 노드 추가
    new_node->value = val;
    new_node-<next = *head;

2)맨 뒤에 노드 추가
new_node->value = val;
new_node->next = NULL;

0개의 댓글