본문 바로가기
  • 저희는 평생 개발할 운명이걸랑요

Tech.log/자료구조4

[트리의 종류들] 2021.05.08 - [Tech.log/자료구조] - [자료구조의 형태] [자료구조의 형태] 자료구조란 ? 컴퓨터에서 사용할 자료를 더 효율 적으로 관리하기 위해서 자료의 특성과 사용 용도에 따라 분류하고 구조화 한것이다. 1. 단순 자료 구조 컴퓨터 프로그래밍에서 쓰이는 데이터 itfordoit.tistory.com 트리란 그래프의 일부이지만 사이클이 없는 계층적 구조이다. 트리에는 여러가지 종류가 있는데 살펴보자. 이진트리 각각의 노드가 최대 두 개의 자식 노드를 가지는트리 자료구조로, 자식 노드를 각각 왼쪽 자식 노드와 오른쪽 자식 노드라고 한다. 정 이진 트리(Full Binary Tree) 모든 레벨에서 노드들이 꽉 채워진 자식노드 2개를 가지고 있는 이진트리다. 완전 이진트리(Complete.. 2021. 5. 20.
[자료구조의 심화] 우선순위 큐(Priority Queue)와 힙(heap) 큐 자료 구조는 선입 선출 구조를 가지고 있었다. 우선 순위는 먼저 들어간 데이터 인 것이다. 그렇다면 우선 순위가 바꿀 수 있을까 ? YES! 그것이 바로 우선 순위 큐 이다. 즉, 다른 우선 순위를 부여하여 우선순위에 맞는 데이터를 먼저 꺼내는 것이다. 힙 최댓값 최솟값을 빠르게 연산하기 위해 고안된 완전 이진트리를 기반으로 한다.부모의 노드의 키 값이 자식보다 큰 경우는 최대힙 작은 경우에는 최소 힙이라고 한다. 완전 이진 트리로 주로 구현 하기 때문에 탐색의 시간 복잡도는 O(logn)이다. 해시테이블(HashTable) Key-Value의 데이터 구조인 자료구조.해시 테이블은 각각 Key 값에 해시 함수를 적용해 index를 생성하고 이는.. 2021. 5. 10.
[자료구조의 형태] 자료구조란 ? 컴퓨터에서 사용할 자료를 더 효율 적으로 관리하기 위해서 자료의 특성과 사용 용도에 따라 분류하고 구조화 한것이다. 1. 단순 자료 구조 컴퓨터 프로그래밍에서 쓰이는 데이터 타입을 말한다. ex) Int, double, string 등등등 2. 선형 구조 자료들 간의 관계가 1:1인 관계이다. 중요하니 자세히 살펴보자, 스택 후입 선출 LIFO(Last In First Out) 구조의 자료 구조 이다. 가장 최근에 추가한 항목이 가장 먼저 제거된다. 삽입(push) 삭제(pop)의 경우 O(1)의 시간 복잡도가 걸린다. 모든 원소를 탐색하려면 일일히 옮겨 가면서 해야하고 맨 위에 원소만 접근 가능하다. 따라서, 보통 역 작업시에 사용한다. (ex.작업 취소) 큐 선입 선출 LIFO(Firs.. 2021. 5. 8.
[Java] Java Collections Framework 알아보기 💬 자료구조 아마 다들 '자료구조'에 대해서 한번씩은 들어봤을 것이다. 자료구조는 Data Structure (데이터 구조) 라고 하는데 '일련의 일정 타입들의 데이터 모임 또는 관계를 나타낸 구성체' 라고 말할 수 있다. 💬 자료구조의 분류 가장 대표적으로 많이 분류되는 방법은 선형 자료구조와 비선형 자료구조로 나눌 수 있다. 이러한 분류는 형태에 따른 자료구조라고 볼 수 있다. 아래에는 위 자료구조에 대해 간단하게 정리해 보았다. 1. 선형 자료구조 (Linear Data Structure) 데이터가 일렬로 연결된 형태 흔히 쓰는 int[] 배열과 같은 것 리스트(List), 큐(Queue), 덱(Deque) 2. 비선형 자료구조 (Nonlinear Data Structure) 각 요소가 여러 개의 .. 2021. 4. 15.