데이터를 제한적으로 접근할 수 있는 구조한쪽 끝에서만 자료를 넣거나 뺄 수 있는 구조가장 나중에 쌓은 데이터를 가장 먼저 빼낼 수 있는 데이터 구조큐: FIFO 정책스택: LIFO 정책스택은 LIFO(Last In, Fisrt Out) 또는 FILO(First In,
줄을 서는 행위와 유사가장 먼저 넣은 데이터를 가장 먼저 꺼낼 수 있는 구조음식점에서 가장 먼저 줄을 선 사람이 제일 먼저 음식점에 입장하는 것과 동일FIFO(First-In, First-Out) 또는 LILO(Last-In, Last-Out) 방식으로 스택과 꺼내는
데이터를 나열하고, 각 데이터를 인덱스에 대응하도록 구성한 데이터 구조파이썬에서는 리스트 타입이 배열 기능을 제공함기본부터 철저하게 익히세요 동기부여 영상같은 종류의 데이터를 효율적으로 관리하기 위해 사용같은 종류의 데이터를 순차적으로 저장장점: 빠른 접근 가능첫 데이
연결 리스트라고도 함배열은 순차적으로 연결된 공간에 데이터를 나열하는 데이터 구조링크드 리스트는 떨어진 곳에 존재하는 데이터를 화살표로 연결해서 관리하는 데이터 구조<font color='링크드 리스트 기본 구조와 용어노드(Node): 데이터 저장 단위 (데이터값
정수의 절대값 구하기1, -1 ->> 1방법1: 정수값을 제곱한 값에 다시 루트를 씌우기방법2: 정수가 음수인지 확인해서, 음수일 때만, -1을 곱하기다양한 알고리즘 중 어느 알고리즘이 더 좋은지를 분석하기 위해, 복잡도를 정의하고 계산함시간 복잡도: 알고리즘 실행 속
Hash Table: 키(Key)에 데이터(Value)를 저장하는 데이터 구조Key를 통해 바로 데이터를 받아올 수 있으므로, 속도가 획기적으로 빨라짐파이썬 딕셔너리(Dictionary) 타입이 해쉬 테이블의 예: Key를 가지고 바로 데이터(Value)를 꺼냄보통 배
트리: Node와 Branch를 이용해서, 사이클을 이루지 않도록 구성한 데이터 구조실제로 어디에 많이 사용되나? 트리 중 이진 트리 (Binary Tree) 형태의 구조로, 탐색(검색) 알고리즘 구현을 위해 많이 사용됨Node: 트리에서 데이터를 저장하는 기본 요소
힙: 데이터에서 최대값과 최소값을 빠르게 찾기 위해 고안된 완전 이진 트리(Complete Binary Tree)완전 이진 트리: 노드를 삽입할 때 최하단 왼쪽 노드부터 차례대로 삽입하는 트리힙을 사용하는 이유배열에 데이터를 넣고, 최대값과 최소값을 찾으려면 O(n)