배열(Array) VS. 리스트(List)
2021. 7. 8. 23:15ㆍ자료구조 (Data Structure)
1. 배열과 리스트
배열과 리스트는 가장 기본적인 순차적(sequential) 자료구조 [매우 기본, 중요]
2, C언어
int A [4] = {2, 4, 0, 5};
2 | 4 | 0 | 5 |
ex) A[2]의 주소 : RAM --> 주소 찾아갈 수 있다
A[0]의 주소 +2 * 4 bytes
3, Python : list
- 객체는 따로 메모리 주소를 가리킨다. 객체가 새로 생겨서 그 주소를 가리킨다.
- index로 임의의 원소를 접근
- 연산자 []: A[2]:-1
- 삽입: append , insert --> O(1)
- 삭제: pop--> O(1), remove --> O(n)
4, 리스트 용량 자동 조절(Dynamic Array)
- C 에서
int A[4] = {2, 4, 0, 5}
A
2 | 4 | 0 | 5 |
A[4] = 10 --> error
B = (int*) malloc(6*4)
B
2 | 4 | 0 | 5 |
임시적 집
A = B //이사한다.
- Python에서
'자료구조 (Data Structure)' 카테고리의 다른 글
Red - Black Tree (0) | 2021.07.11 |
---|---|
Hash Table (0) | 2021.07.10 |
HEAP(힙) (0) | 2021.06.29 |
TREE (트리) (0) | 2021.06.29 |
순차적 자료구조 - QUEUE (0) | 2021.06.28 |