CS/자료구조
[자료구조] 1. Array, Pointer, Stack, Queue, LinkedList
두둠칫
2020. 12. 1. 14:59
1. Array
연속적인 memory에 저장된 같은 type의 data집합
2. Pointer
// 일반 포인터
type* var_name;
cout << sizeof(var_name); // always 4
// 구조체 포인터
typedef struct ex *exPtr;
typedef struct ex{
element data;
exPtr ptr;
}
exPtr ptr = NULL;
malloc(ptr, sizeof(exPtr));
ptr->data = (element); // == *(*ptr).data = (element);
3. Stack
한쪽 끝에서만 자료를 추가하고 삭제할 수 있는 FILO형태의 자료구조
4. Queue
한쪽 끝에서만 자료를 추가하고 삭제할 수 있는 FIFO형태의 자료구조
5. Linkedlist
기준에 따라 순서대로 배치할 때 새로운 element 삽입/삭제를 단순 Array보다 빠르게 할 수 있는 자료구조
typedef struct listNode *listPtr;
typedef struct listNode{
int data;
listPtr link;
}
listPtr first = NULL;
malloc(first, sizeof(listPtr));
first->link = ...