
정의 : 입력의 크기와 문제를 해결하는데 걸리는 시간의 상관관계를 의미컴퓨터 1초 연산량 3-5억개(물론, 단순연산과 복잡한 연산과의 횟수 차이가 있기에 주의)\-> 시간 제한이 1초라고 하면 "프로그램이 3-5억 번의 연산 안에 답을 내고 종료되어야 한다"\-> 정렬
메모리 상에 원소 연속 배치 구조라 k번째 원소 위치를 바로 계산할 수 있다. 시간 복잡도는 O(1)추가적으로 소모되는 메모리 양이 거의 없다.맨 뒤가 아닌 임의의 위치에 원소를 추가하는 과정은 O(n). 원소를 추가하고 나머지 데이터들을 뒤로 한 칸씩 미뤄야하기 때문

원소들을 저장할 때 그 다음 원소가 있는 위치를 포함시키는 방식으로 저장하는 자료구조.k번째 원소를 확인/변경하기 위해 O(k)가 필요\-> 공간에 원소가 연속해서 위치하지 않기 때문에.임의의 위치에 원소를 추가/임의 위치 원소 제거는 O(1)원소들이 메모리 상에 연속
본 게시물은 BaaarkingDog님의 실전 알고리즘 강의를 통해 공부한 것을 정리합니다. [추가] 용감하게 시작하는 코딩테스트 [추가] 코딩 테스트 합격자 되기 - 파이썬 편 스택 한쪽 끝에서만 원소를 넣거나 뺄 수 있는 자료구조. 구조적으로 먼저 들어간 원소가 제
본 게시물은 BaaarkingDog님의 실전 알고리즘 강의를 통해 공부한 것을 정리합니다. [추가] 용감하게 시작하는 코딩테스트 [추가] 코딩 테스트 합격자 되기 - 파이썬 편 큐 한쪽 끝에서 원소를 넣고 반대쪽 끝에서 뺄 수 있는 자료구조 먼저 들어간 원소가 먼저

양쪽 끝에서 삽입과 삭제가 전부 가능한 자료구조로. Double Ended Queue라는 뜻을 가지고 있다.원소의 추가가 O(1)원소의 제거가 O(1)제일 앞/뒤의 원소 확인이 O(1)제일 상단이 아닌 나머지 원소들의 확인 및 변경이 원칙적 불가능.head와 rear을
주어진 괄호 문자열이 올바른지 판단하는 문제이다. 짝이 다 맞으면 맞는거 아닌가?방법1 : 짝 맞추기해서 지워나가기. 물론, (())()()과 같은 경우만 동작한다.괄호가 여러 종류일 때는 그 방법으로만 해결이 되지 않는다. ({)}와 같은 경우 해결 불가.방법2 :

다차원 배열에서 각 칸을 방문할 때 너비를 우선으로 방문하는 알고리즘그래프 자료구조에서 모든 노드를 방문하기 위해 만든 알고리즘이다.정점(노드)와 간선(엣지)로 구성된 자료구조 이다.좌표를 방문하면 표시를 남기고 큐에 넣는다. 큐가 빌 때까지 큐의 front를 빼고 좌

다차원 배열에서 각 칸을 방문할 때 깊이를 우선으로 방문하는 알고리즘시작하는 칸을 스택에 넣고 방문했다는 표시 남김스택에서 원소를 꺼내어 그 칸과 상하좌우로 인접한 칸에 대해 해당 칸을 이전에 방문했다면 아무 것도 하지 않고, 처음으로 방문했다면 방문했다는 표시를 남기

코딩테스트를 위해 걷는중
본 게시물은 BaaarkingDog님의 실전 알고리즘 강의를 통해 공부한 것을 정리합니다. [추가] 용감하게 시작하는 코딩테스트 [추가] 코딩 테스트 합격자 되기 - 파이썬 [추가] 좌충우돌, 파이썬으로 자료구조 구현하기 백트래킹 현재 상태에서 가능한 모든 후보군을

그래프는 현실 세계의 복잡한 관계를 효과적으로 모델링할 수 있는 대표적인 자료구조입니다. 아래는 그래프의 정의, 종류, 활용, 그리고 코드로 표현하는 방법까지 한눈에 정리한 내용입니다.그래프(Graph)는 객체(노드, 정점)와 이들 사이의 연결(간선)로 구성된 자료구조

그래프 순회는 모든 정점을 한 번씩 방문하는 과정입니다. 대표적으로 너비 우선 탐색(BFS)과 깊이 우선 탐색(DFS) 두 가지 방식이 있습니다.BFS는 시작 정점에서 가까운 노드부터 차례로 탐색합니다.큐(Queue) 자료구조를 사용하며, 먼저 예약된 노드부터 방문하기

트리(Tree)와 순회(Traversal) 완전 정리 트리는 계층적 구조를 표현하는 대표적인 비선형 자료구조입니다. 이 글에서는 트리의 기본 개념부터 BFS/DFS 순회 방법까지 코드와 함께 자세히 알아보겠습니다. 트리(Tree)의 정의 트리는 노드(Node)와
Union-Find(=Disjoint Set Union, DSU)는 “서로소 집합”을 효율적으로 관리하면서, 두 원소가 같은 집합인지 확인(Find)하고 두 집합을 합치는(Union) 연산을 빠르게 처리하는 자료구조/알고리즘이다. 경로 압축(Path Compressi