Stack 스택(Stack) 나중에 넣은 데이터가 먼저 나오는 LIFO 기반의 선형 자료 구조 구현 메서드 데이터 전체 획득 / 비어 있는지 확인: Stack.getBuffer(), Stack.isEmpty() 추가 / 삭제 / 마지막 데이터 조회 / 크기 확인: Stack.push(), Stack.pop(), Stack.peek(), Stack.size() 데이터 위치 / 존재 여부 확인: Stack.indexOf(), Stack.includes() ✔ Stack 구현 예제(1) // Stack() : 생성자 함수로, 초기 데이터 설정 function Stack(array) { this.array = array ? array : []; } // 객체 내 데이터 셋 반환 Stack.prototype.ge..
개발 뜯기/컴퓨터과학
Circular Queue 원형 큐(Circular Queue) 원형 형태를 가진 FIFO 기반 선형 자료 구조 length보다 길게 넣을 경우 삭제 시키기(메서드 사용) 구현 메서드 데이터가 다 찼는지 / 비어있는지 확인: CircularQueue.isFull(), PriorityQueue.isEmpty() 데이터 추가 / 삭제 / 반환: CircularQueue.enqueue(), CircularQueue.dequeue(), CircularQueue.getBuffer() 첫 번째 데이터 / 사이즈 / 전체 삭제: CircularQueue.front(), CircularQueue.size(), CircularQueue.clear() ✔ Circular Queue 구현 예제(1) // CircularQu..
Priority Queue 우선순위 큐(Priority Queue) 우선순위를 고려하여 먼저 넣은 데이터가 먼저 나오는 FIFO 기반의 선형 자료 구조 우선순위 정렬 방식: 배열 기반, 연결리스트 기반, 힙(Heep) 기반 등의 정렬 방식 존재 구현 메서드 데이터 전체 획득 / 비어있는지 확인: PriorityQueue.getBuffer(), PriorityQueue.isEmpty() 데이터 추가 / 삭제: PriorityQueue.enqueue(), PriorityQueue.dequeue() 첫 번째 데이터 / 사이즈 / 전체 삭제: PriorityQueue.front(), PriorityQueue.size(), PriorityQueue.clear() ✔ Priority Queue 구현 예제(1) //..
Queue 1) 큐(Queue) 먼저 넣은 데이터가 먼저 나오는 FIFO 기반의 선형 구조 구현 메서드 데이터 전체 획득 / 비어 있는지 확인: Queue.getBuffer, Queue.isEmpty() 데이터 추가 / 삭제: Queue.enqueue(), Queue.dequeue() 첫 번째 데이터 / 사이즈 / 전체 삭제: Queue.front(), Queue.size(), Queue.clear() Queue 구현 예제(1) 객체 내 데이터 셋 반환, 존재 여부 파악 // Queue(): 생성자 함수로 초기 데이터 설정 function Queue(array) { this.array = array ? array : []; } // getBuffer(): 객체 내 데이터 셋 반환 Queue.prototy..
Circular Linked List 원형 연결 리스트(Circular Linked List) 각 노드가 데이터와 포인터를 가지며, 원형 형태로 연결되어 있는 방식으로 데이터를 저장하는 자료 구조 사용 많이 안함! 구현 메서드 노드 개수 / 빈 노드 확인 / 출력: CircularLinkedList.size(), CircularLinkedList.isEmpty(), CircularLinkedList.printNode() 노드 추가: CircularLinkedList.append(), CircularLinkedList.insert() 노드 삭제: CircularLinkedList.remove(), CircularLinkedList.removeAt() 데이터 위치 확인: CircularLinkedList.i..