▶️ 데이터(Data)는 현실 세계로부터 단순한 관찰이나 측정을 통해서 수집된 사실(fact)이나 값(value)을 말한다. 하지만, 정보(information)는 적절한 의사결정을 할 수 있게 하는 지식으로서 수집된 데이터의 유효한 해석이나 데이터 상호 간의 관계를
▶️ 배열은 연속된 데이터를 저장하는 자료구조이다.▶️ 배열에서 크기를 정해놓는데 각각에 연속된 주소를 부여받는다▶️ Javascript 기준, array0라는 것이 있으면 \[]안에 있는 것이 인덱스이다.인덱스를 갖게 된다는 것은 임의 접근이 가능하다는 뜻이다.따라서
▶️ 그림에서 보다시피, 같은 크기와 구조의 데이터를 정해진 방향으로만 쌓을 수 있다.▶️ Top으로 정한 곳을 통해서만 접근할 수 있다.Top의 가장 제일 위에 있는 자료는 가장 최신에 들어온 자료이다.▶️ 'push' : 삽입되는 연산 'pop' : 삭제되는 연
1. Deque(디큐, 덱) DeQue : Double Ended Queue ▶ 스택과 큐의 결합체이다. ▶ 양쪽 끝에서 항목의 조회, 삽입, 삭제가 가능하다. 덱(Deque)은 어떤 쪽으로 입력하고 어떤 쪽으로 출력하느냐에 따라서 스택(Stack)으로 사용할 수도
트리는 노드로 이루어져있다.1:N으로 이루어진 1)비선형 구조이며 계층 구조를 표현한다.그래프의 일종이다.n:n ⇒ 그래프/ 1:n + 계층 ⇒ 트리한 개의 루트 노드만이 존재하며 모든 자식 노드는 한개의 부모 노드만을 가진다.노드가 n개라면, 간선은 n-1개이다.어떤
가장 상단의 노드를 '루트 노드(Root Node)', 중간 노드들을 '브랜치 노드(Branch Node)', 가장 아래 노드들을 '리프 노드(Leaf Node)'이다. 이진트리(Binary Tree)에는 정이진트리(Full binary tree), 포화이진트리(Per
✨용어 간단 요약 해시테이블은 hash를 주소로 삼아 데이터를 저장하는 자료구조이다. 해시 함수(Hash Function)은 Key를 Hash값으로 만들어주는 함수이다. 해시(Hash) : 해시 함수에 의해 얻어지는 값 해시(Hash)는 저장위치(주소), 색인, 인덱
List, Map, Set 배경 기존에는 많은 데이터들을 삽입, 삭제, 검색을 하기 위해 배열을 사용했다. 하지만 이 배열은 크기가 고정되어 있고 삽입, 삭제가 오래 걸린다는 단점을 가지게 된다. 따라서 자바는 이것을 보완하기 위해 1)동적배열 개념인 Collecti
▶️ 이진탐색트리는 1)이진트리와 연결리스트를 결합한 구조이다.\->이진트리의 탐색 능력과 연결리스트의 입력, 삭제 능력이 가능하게끔 고안되었다.이진트리의 경우 탐색은 O(logn)으로 빠르지만 입력, 삭제가 불가능하다.연결리스트의 경우 입력, 삭제를 할 경우 O(1)
AVL트리는 자가 균형 이진 탐색 트리이다.즉 자기 스스로 균형을 잡는 이진 탐색 트리라는 뜻이다.\[이진탐색트리 추가 설명]이진 탐색 트리는 문제를 발생시킬 수 있다.위 그림과 같이 한쪽으로 노드가 쏠릴 수가 있다.이진탐색트리의 탐색 시간은 O(logN)이지만, 이렇
Red-Black Tree는 일종의 자기 균형 이진 탐색 트리이다. .즉 자기 스스로 균형을 잡는 이진 탐색 트리라는 뜻이다. RB Tree의 가장 큰 특징은 삽입, 삭제 동안 트리의 모양이 “균형 잡히도록" 각 노드들은 red 나 black 색상을 가진다는 것이다.따
이진 검색 트리 등에서는 원소를 찾는데 O(logN)의 시간이 걸리게 된다.하지만 문자'열'의 경우 두 문자열을 비교해야 하는데, 이때는 문자열의 길이만큼 시간이 걸린다. 원하는 문자열(M개)을 찾기 위해서는 O(MlogN)의 시간이 걸리게 된다.이 단점을 해결하기 위
자바는 배열이 크기가 고정되어 있고 삽입 삭제가 오래걸린다는 단점을 보완하기 위해 1)동적배열 개념인 Collection Framework를 제공한다. 대표적인 종류가 List, Set, Map이다. [LIST,MAP,SET 설명 더보기] 0. Map > Key 값