선형 구조 : 스택, 큐
개발/이론2024. 3. 10. 21:26선형 구조 : 스택, 큐

선형 구조 : 자료를 순차적으로 나열한 형태 배열 연결 리스트 스택/큐 비선형 구조 : 하나의 자료 뒤에 다수의 자료가 올 수 있는 형태 트리 그래프 스택 Stack 메모리에 LIFO(Last-In-First-Out)으로 데이터를 저장하는 구조 : 메모리에 가장 나중에 들어간 데이터가 먼저 출력되는형식 되돌리기 기능같은 곳에 사용하면 좋겠다.(ctrl+z) 따라서 벡터(동적배열)이나 연결리스트 둘중 어느 것으로도 구현할 수 있다. 필요한 기능이 1. 메모리에 데이터 입력하기, 2. 마지막으로 입력된 데이터(맨 뒤에 있는 데이터) 출력하기 2가지 이기 때문. 이건 벡터를 이용해서 stack을 구현한건데, stack의 타입을 list로만 바꿨음에도 잘 동작한다. → 내부적인 구조는 벡터에서 리스트로 바뀌지만..

선형 자료구조 기초
개발/이론2024. 3. 8. 23:58선형 자료구조 기초

선형 구조 : 자료를 순차적으로 나열한 형태 배열 연결 리스트 스택/큐 비선형 구조 : 하나의 자료 뒤에 다수의 자료가 올 수 있는 형태 트리 그래프 1. 배열 (STL Array) 메모리 크기 고정(절대 변경 불가), 연속된 주소 장점 : 연속된 메모리 단점 : 메모리 추가/축소 불가 2. 동적 배열(vector) 메모리 크기의 여유분을 두고(1.5배~2배) 설정, 연속된 주소 만약 여유분이 다 차면, 다같이 연속된 메모리위치로 이사 (여유분의 이유 : 이사횟수를 최소화하기 위해) 장점 : 유동적인 삽입(메모리 여유분 추가 예약으로 이사 최소) 단점 : 중간 삽입 / 삭제 할 경우 나머지가 옆으로 이동해야함 동적 배열 구현 벡터 사용시 헤더 추가 push_back : 현재 저장된 데이터 크기(size)..

image