-
정적배열, 동적배열 차이점 설명영상, 글 요약 2023. 1. 17. 00:01
#1 서론
정적배열, 동적배열은 조금 다르다.
이 둘의 차이점을 알아본다.
#들어가기 전
들어가기전에 우리가 프로그램(파이썬, C)를 사용해서 데이터를 배열이나 리스트, 딕셔너리 등에 저장할때 그 데이터가 컴퓨터 어디에 저장되는지 알아보자.
우리가 프로그램으로 데이터를 저장하면, RAM에 저장된다.
RAM은 Random access memory로 우리가 필요로 하는 값을 저장한 '주소'만 알고 있으면 바로 값을 가져올 수 있다.
#2 본론
정적배열과 동적배열
정적배열과 동적배열의 차이점은 '저장공간을 예약했냐' 이다.
정적배열은 RAM에 저장할 데이터의 길이를 미리 예약해 둔다.
RAM은 한 칸에 '바이트'의 데이터를 저장할 수 있는데, 정적배열은 그 칸을 연속적으로 길이만큼 예약하는 것이다.
그래서 정적배열에 예약해 둔 길이보다 더 많은 데이터를 저장할 수 없다.
동적배열은 저장할 데이터의 길이를 미리 예약해 두지 않는다.
동적배열은 정적배열로 구현되어있어서 기본적으로는 정적배열과 비슷하다.
다만 동적배열이 구성되어있는 정적배열이 모두 찼을때 새로운 값을 추가해 주고 싶다면, 더 큰 길이의 정적배열을 생성하여, 기존에 있던 값을 복사한 후 추가하고 싶은 값을 추가한다.
#3 결론
그러므로 정적배열은 예약한 길이를 넘어가면 새로운 값을 추가하지 못하고, 동적배열은 가능하다.
#4 참고자료
코드잇 자료구조 강의
'영상, 글 요약' 카테고리의 다른 글
이진검색(binary search) 파이썬 반복문으로 구현 (0) 2023.01.19 링크드리스트 설명 (0) 2023.01.18 큐(Queues)와 스택(Stacks) (0) 2023.01.04 Hash Table과 array 차이점, 설명 (0) 2023.01.03 계수정렬(counting sort)의 원리 (0) 2023.01.01