본문 바로가기

자료구조2

자료구조 - 스택 with javascript 안녕하세요 기공준입니다. 이번 글에서는 스택에 대해서 간단하게 알아보고 javascript를 이용해서 스택을 구현해보겠습니다. 스택은 목록의 끝에서만 접근할 수 있는 나열 구조입니다. 스택은 한쪽 끝에서만 자료를 넣거나 뺄 수 있는 선형구조(LIFO - Last In First Out)로 되어 있습니다. 자료를 밀어 넣는 것을 push라 하고 반대로 넣어둔 자료를 꺼내는 것을 pop이라고 합니다. 이때 꺼내지는 자료는 가장 최근에 push 한 자료부터 나오게 됩니다. 이처럼 나중에 넣은 값이 먼저 나오는 것을 LIFO(Last In First Out) 구조라고 합니다. 연산 top() : 스택의 가장 윗 데이터를 반환. 스택이 비었다면 연산 정의 불가 pop(): 스택의 가장 윗 데이터를 삭제한다. 스택.. 2021. 3. 29.
자료구조 - 연결 리스트 안녕하세요 이번 글은 자료구조 중에서 연결 리스트에 대한 글입니다. 연결 리스트(linked list)는 각 노드가 데이터와 포인터를 가지고 한 줄로 연결되어 있는 방식으로 데이터를 저장하는 자료 구조입니다. 데이터를 담고 있는 노드들이 연결되어 있는데, 노드의 포인터가 다음이나 이전의 노드와 연결하는 역할을 하고 있습니다. 연결 리스트는 추가와 삭제가 O(1)의 시간에 가능하다는 장점이 있습니다. 하지만 데이터를 검색해 내는 데에는 O(n)의 시간이 걸리는 단점을 갖고 있습니다. 연결 리스트의 종류로는 단일 연결 리스트, 이중 연결 리스트, 원형 연결 리스트가 있습니다. 단일 연결 리스트 단일 연결 리스트는 각 노드에 데이터 공간과 포인터 공간이 있고, 각 노드의 포인터는 다음 노드를 가리킵니다. 이중.. 2021. 3. 27.