코딩 테스트/자료구조 & 알고리즘

해시(Hash)란?해시(Hash)란 특정 key를 인덱스로 삼아 value 값을 저장하는 자료구조이다.이 key 값은 해시함수를 통해 해시값으로 변환되어 value값의 인덱스가 된다.  리스트와 같은 자료구조에선 단순히 숫자가 value의 인덱스가 되겠지만 해시에는 숫자 뿐만 아니라 모든 객체를 인덱스처럼 사용할 수 있다. 이러한 자료구조는 실생활에서도 쉽게 볼 수 있는데 대표적인 예가 전화번호부이다.key가 이름이고 value가 전화번호이다.이름을 해시함수에 넣어서 이를 통해 해시 값을 반환해 전화번호에 매핑한다.해시를 통해 빠르게 특정 데이터를 빠르게 접근할 수 있다.key값만 있으면 value값을 바로 찾아낼 수 있으므로 시간 복잡도가 O(1)이 된다.  해시 값과 value를 매칭시켜놓은 공간을 ..
큐(Queue)란?큐(Queue)란 먼저 들어간 데이터가 먼저 나오는 자료구조이다. 이러한 특징을 선입선출 또는 FIFO(FirstInFirstOut)이라고 한다. 큐에 데이터를 삽입하는 것을 Enqueue(add)라고 하고 큐로부터 데이터를 꺼내는 것을 Dequeue(poll)라고 한다. 큐의 ADT메서드설명boolean isFull()큐에 들어가 있는 데이터 개수가 maxsize인지 확인해 boolean 값을 반환한다.boolean isEmpty()큐에 데이터가 없는지 확인해 boolean 값을 반환한다.void add(ItemType item)큐의 데이터를 삽입한다(Enqueue)ItemType poll()큐의 데이터를 꺼내고 그 데이터를 반환한다(Dequeue) 변수설명int front큐에서 가장..
스택(Stack)이란?스택이란 먼저 입력한 데이터를 가장 나중에 꺼낼 수 있는 자료구조이다. 먼저 입력한 데이터는 아래에 깔리고 그 위에 차곡차곡 데이터가 쌓인다. 데이터를 꺼낼려면 가장 위에 쌓인 데이터를 꺼내야 하므로 가장 마지막에 입력된 데이터가 꺼내진다.이러한 규칙을 선입후출, First In Last Out(FILO)라고한다.스택에 데이터를 삽입하는 연산을 Push, 스택에서 데이터를 꺼내는 연산을 Pop이라고 한다.스택의 ADT메서드 및 변수설명boolean isFull()스택에 데이터의 갯수가 MaxSize와 같다면 true, 그렇지 않다면 false를 반환한다.boolean isEmpty()스택에 데이터가 없는 경우 true를 반환, 그렇지 않으면 false를 반환한다.void push(I..
jaehee1113
'코딩 테스트/자료구조 & 알고리즘' 카테고리의 글 목록 (4 Page)