[Data Structure] 해시(Hash)
·
🖥️ CS/Data Structure
현대 사회에서는 상상을 초월하는 양의 데이터가 생성되고 있습니다. 이러한 방대한 데이터를 어떻게 효율적으로 관리하고 활용할 수 있을까요? 예를 들어, 특정 데이터를 찾아야 하는 상황을 생각해봅시다. 가장 단순한 방법은 처음부터 끝까지 순차적으로 모든 데이터를 확인하는 것입니다. 하지만 이 방식은 데이터의 양이 늘어날수록 비효율적이 됩니다. 최악의 경우, 원하는 데이터를 찾기 위해 모든 항목을 일일이 확인해야 할 수도 있기 때문입니다. 이러한 문제를 해결하기 위해 고안된 자료구조 중 하나가 바로 '해시(Hash)'입니다. 해시란?해시는 특별한 함수인 '해시 함수'를 사용하여 데이터를 변환하고, 이 변환된 값을 인덱스로 활용하여 데이터를 저장하고 검색하는 자료구조입니다. 이 방식을 통해 해시는 대량의 데이터..
[Data Structure] 큐(Queue)
·
🖥️ CS/Data Structure
큐란?큐는 '줄을 서다'라는 의미를 가지고 있습니다. 큐는 "First In, First Out" (FIFO) 원칙을 따르는 선형 데이터 구조로, 이는 먼저 들어온 요소가 가장 먼저 나가는 구조를 의미합니다. 실생활에서 큐의 예를 들자면 줄서기를 생각해볼 수 있습니다. 먼저 줄을 선 사람이 먼저 서비스를 받게 됩니다. 동작 원리큐의 기본적인 동작 원리는 다음과 같습니다.Enqueue (삽입): 새로운 요소를 큐의 후미에 추가합니다.Dequeue (삭제): 큐의 전방에서 요소를 제거하고 반환합니다.Peek: 큐의 맨 앞에 있는 요소를 조회합니다 (제거하지 않음). 큐의 ADT (Abstract Data Type)큐의 추상 자료형(ADT)은 다음과 같은 주요 연산들과 상태들을 포함합니다:연산 (Operati..
[Data Structure] 스택(Stack)
·
🖥️ CS/Data Structure
스택이란?스택은 컴퓨터 과학에서 가장 기본적이고 중요한 자료구조 중 하나입니다. 스택은 "Last In, First Out" (LIFO) 원칙을 따르는 선형 데이터 구조입니다. 이는 마지막에 들어온 요소가 가장 먼저 나가는 구조를 의미합니다. 실생활에서 스택의 예를 들자면 책더미를 생각해볼 수 있습니다. 책을 쌓을 때 가장 마지막에 올려놓은 책이 맨 위에 있게 되고, 책을 꺼낼 때도 맨 위에 있는 책부터 꺼내게 됩니다. 동작 원리스택의 기본적인 동작 원리는 다음과 같습니다.푸시(Push): 스택의 맨 위에 새로운 요소를 추가합니다.팝(Pop): 스택의 맨 위에 있는 요소를 제거하고 반환합니다.피크(Peek): 스택의 맨 위에 있는 요소를 제거하지 않고 반환합니다.이러한 동작들은 항상 스택의 맨 위(top..
윤도기
'Data Structure' 태그의 글 목록
상단으로