티스토리 뷰

연결 리스트를 써야하는 상황 -> 몇개의 원소를 갖는지 미리 정하지 못하는 상황


장점 : 쉽고 빠른 추가/삽입/삭제

단점 :  원소의 참조(탐색)가 비효율적, 포인터 때문에 4byte추가 공간 필요



스택


선입 후출(먼저 들어가면 나중에 나오는) 구조


1. 배열 기반 스택

typedef int ElementType;


typedef struct tagNode

{

ElementType Data;

}Node;


typedef struct tagArrayStack //배열 기반 스택

{

int Capacity;

int Top;

Node* Nodes;

}ArrayStack;

스택을 배열로 구현 할 경우 구현이 상대적으로 간편하지만, 대신에 크기를 미리 정해야함.

연결리스트로 스택을 구현 할 경우 구현은 상대적으로 손이 더 가지만, 크기를 미리 정하지 않아도됨. 둘의 장단점이 반대임


2. 연결리스트 기반 스택



맨아래가 시작지점이고 맨위에가 끝지점임. 선입후출

1typedef struct LinkedListStack
2{                                                       
3    Node* List;
4    Node* Top;
5 
6} LinkedListStack;




댓글
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
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
글 보관함