Null은 -1과 같게 하고, Index는 int와 같게 한 뒤 코드를 살펴보겠습니다.
노드 구조체
연결 리스트 안에 있는 노드 하나 하나에 대한 형식입니다.
자료형은 'Node'입니다.
연결 리스트 구조체
연결 리스트 전체에 대한 형식입니다.
자료형은 'List'입니다.
함수 01 GetIndex - 레코드가 삽입될 위치의 인덱스 알아내기
연결 리스트 list에 새로운 노드를 삽입하고 싶을 때, 삽입될 위치의 인덱스를 알아낸 뒤 반환합니다.
함수 02 DeleteIndex - 지정된 레코드를 삭제 리스트에 등록
연결 리스트 list에서 인덱스 idx에 있는 레코드를 삭제하여 프리 리스트에 등록합니다.
함수 03 SetNode - 노드에 값 설정
노드 n에 넣고 싶은 값(데이터 x와 다음 노드에 대한 인덱스 next)을 넣습니다.
함수 04 Initialize - 연결 리스트 생성
크기가 size인 연결 리스트 list를 생성합니다.
함수 05 Search - 연결 리스트에서 원하는 데이터 찾기
연결 리스트 list에서 데이터 x가 들어있는 노드를 찾은 후, 그 노드에 대한 포인터를 반환합니다.
함수 06 InsertFront - 연결 리스트 맨 앞에 노드 삽입
연결 리스트 list의 맨 앞에 데이터 x를 삽압합니다.
함수 07 InsertRear - 연결 리스트 맨 뒤에 노드 삽입
연결 리스트 list의 맨 뒤에 데이터 x를 삽입합니다.
함수 08 RemoveFront - 연결 리스트 맨 앞 노드 삭제
연결 리스트 list의 맨 앞 노드를 삭제합니다.
함수 09 RemoveRear - 연결 리스트 맨 뒤 노드 삭제
연결 리스트 list의 맨 뒤 노드를 삭제합니다.
함수 10 RemoveCurrent - 현재 선택한 노드 삭제
연결 리스트 list의 현재 선택한 노드를 삭제합니다.
함수 11 Clear - 연결 리스트 초기화
연결 리스트 list에 있는 모든 노드를 삭제합니다.
함수 12 PrintCurrent - 현재 선택한 노드 출력
연결 리스트 list의 현재 선택한 노드를 출력합니다.
함수 13 PrintLnCurrent - 현재 선택한 노드 출력 + 줄바꿈
연결 리스트 list의 현재 선택한 노드를 출력한 후 줄을 바꿉니다.
함수 14 Print - 모든 노드 출력
연결 리스트 list에 있는 모든 노드들을 출력합니다.
함수 15 Terminate - 연결 리스트 삭제
연결 리스트 list를 삭제합니다.
'Algorithm > 이론' 카테고리의 다른 글
(C언어) 이진검색트리 (0) | 2021.09.29 |
---|---|
(C언어) 원형 이중 연결 리스트 (0) | 2021.09.29 |
(C언어) 연결 리스트 by 포인터 (0) | 2021.09.29 |
(C언어) 큐 (0) | 2021.09.29 |
(C언어) 스택 (0) | 2021.09.29 |