- Today
- Total
Recent Posts
Recent Comments
Archives
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 면접 파이썬
- 크롤링
- 알고리즘 강좌
- 파이썬활용
- 알고리즘
- 기말시험
- 채용문제
- 프로그래밍
- c언어
- gdrive
- python 중간고사
- 코딩시험
- 파이썬
- 파이썬 자료구조
- 쉬운 파이썬
- 파이썬 강좌
- 자료구조 강의
- 코딩문제
- 파이썬 입문
- Crawling
- 셀레니움
- 중간시험
- 알고리즘 강의
- 파이썬 알고리즘
- 파이썬 강의
- 대학시험
- python data structure
- selenium
- 자료구조
- 파이썬3
Notice
반원 블로그
02a. 연결 리스트와 배열과 배열리스트 본문
여러 데이터를 저장하는 구조
여러 데이터를 저장하는 자료형은 대표적으로 배열(Array)와 리스트(List)가 있습니다.
배열
여러 데이터를 저장한 자료형 중에 월등히 빨리 접근 할 수 있습니다.
하지만 처음 생성시 얼만큼 사용할 건지 미리 정해야되서, 실제 사용보다 너무 크게 크기를 정하면 메모리 낭비가 됩니다.
또한 배열 크기가 너무 큰 경우 이만큼 할당할 수 있는 메모리 공간을 찾기 힘들 수 있습니다.
배열이 꽉 차면 사이즈 변경이 불가하기 때문에 새로 만들어 복사해줘야합니다.
그 외로 다차원 표현이 가능합니다.(2차원 또는 3차원 배열)
배열 리스트
배열과는 다르게 사이즈 변경이 가능하여 데이터 삽입 및 삭제가 가능합니다.
하지만 구조는 배열처럼 따닥 붙어있어서 너무 크면 메모리 할당이 힘들 수도 있습니다. 또한 따닥 붙어있는데 삽입 삭제는 가능한 구조다보니 다차원을 구현할 수가 없습니다.
연결 리스트
속도는 앞에 나온 것들보다는 느리지만, 삽입 삭제 등의 연산과 다차원 구조가 가능합니다. 또한 필요한 메모리를 띄엄띄엄 둘 수 있어서 메모리 할당의 어려움도 없습니다.(메모리를 전부 다 쓰지않는 이상..)
데이터의 삽입과 삭제 연산이 잦고, 크기의 유동 폭이 큰 경우에는 이 연결리스트를 사용하며, 앞으로 단일 연결 리스트, 이중 연결 리스트, 환형 연결 리스트에 대해 얘기하려 합니다.
위키독스 연재 : https://wikidocs.net/book/2868
'2018~ > 파이썬 자료구조 알고리즘' 카테고리의 다른 글
02b. 단일 연결 리스트(singly linked list) - iii. 출력 (0) | 2019.04.29 |
---|---|
02b. 단일 연결 리스트(singly linked list) - ii. 삽입 (0) | 2019.04.28 |
02b. 단일 연결 리스트(singly linked list) - i. 구조 (0) | 2019.04.27 |
02b. 단일 연결 리스트(singly linked list) (0) | 2019.04.26 |
02. 연결 리스트 (0) | 2019.04.24 |
01f. 학습에 도움이 되는 사이트 (0) | 2019.04.23 |
01e. 노드(Node) - 자료구조 기본 단위 (0) | 2019.04.22 |
01d. 재귀호출(순환호출) (0) | 2019.04.21 |
Comments