알고리즘(algorithm)은 문제 해결에 필요한 계산 절차 또는 처리 과정을 뜻한다.
재귀(recursion)는 자기 자신을 참조하는 것을 뜻한다.
복잡도란 '계산 복잡도 이론'에서 나온 것으로, 특정 알고리즘의 성능을 나타내는 척도로 사용된다.
정렬 알고리즘은 컴퓨터 분야에서 매우 중요한 문제로, 탐색을 위한 데이터의 나열을 의미한다.
DFS와 BFS는 그래프의 각 정점을 방문하는 그래프 순회알고리즘이다.
자료구조(data structure)는 컴퓨터 과학에서 효율적인 접근 및 수정을 가능케 하는 자료의 조직, 관리, 저장을 의미한다.
Stack과 Queue는 대표적인 선형구조 방식이다.
그래프(Graph)는 정점과 간선으로 이루어진 자료구조이다.
트리는 정점(Node)과 선분(Branch)을 이용하여 사이클을 이루지 않도록 구성한 Graph의 특수한 형태이다.
연결 리스트는 각 노드가 데이터와 포인터를 가지고 한 줄로 연결되어 있는 방식으로 데이터를 저장하는 선형 자료구조이다.
Programmers_1. 스택/큐
leetcode 125. Valid Palindrome
leetcode 344. Reverse String
leetcode 937. Reorder Data in Log Files
leetcode 1. Two Sum
leetcode 200. Number of Islands
leetcode 148. Sort List
방향이 있는 간선들의 목록이 주어질 때, 연결된 정점의 컴포넌트(그룹들)가 몇 개인지 반환하는 함수를 작성하세요.
1, 2, 3으로만 이루어진 수열 바코드를 만들어야 합니다.
정수를 요소로 갖는 배열을 입력받아 오름차순으로 정렬하여 리턴해야 합니다.
정답이 순서대로 들은 배열 answers가 주어졌을 때, 가장 많은 문제를 맞힌 사람이 누구인지 배열에 담아 return 하자.
0 또는 양의 정수가 주어졌을 때, 정수를 이어 붙여 만들 수 있는 가장 큰 수를 알아내 주세요.