목록queue (2)
CodeClover
Stack(스택) ? 스택(Stack)은 데이터를 저장하고 관리하는 자료구조 중 하나로, 구멍을 예로 들어 설명이 가능하다. 구멍에 공을 하나씩 넣으면, 나중에 넣은 공이 먼저 빠져나오게 된다.스택은 이렇게 마지막에 들어간 데이터가 먼저 나오는 LIFO(Last In, First Out) 구조를 가지고 있습니다. 즉, 데이터를 넣는 입구와 꺼내는 출구가 동일한 위치에 있어, 마지막에 넣은 데이터가 가장 먼저 처리되는 방식이다. [ 메소드 정리 ]//스택에서 넣는 연산.push()//스택에서 빼는 연산.pop()//스택이 비어있는 경우 CHECK.isEmpty()//스택 제일 상단에 있는것 CHECK.peek() [ 이해를 돕기 위한 예시 코드 정리 ]//스택 객체 생성하기 Stack stack = n..
큐 생성 방법 ( 3 ) LinkedList 사용한 큐 생성 ( => BFS 구현시 주로 사용 )Queue queue = new LinkedList();요소의 삽입과 삭제가 빠르다는 장점 ( O(1) ) 요소 접근이 느리다는 단점 ( O(n) ) ex . bfs 구현 ( 큐의 요소를 빈번하게 추가하고 제거하기 때문에 요소의 삽입과 삭제가 빠른 LinkedList 를 주로 사용한다. ) PriorityQueue 사용한 큐 생성 Queue queue = new PriorityQueue();요소가 우선순위에 따라서 정렬되어 처리된다는 장점 삽입과 삭제가 비교적 느리다는 단점 ex . 다익스트라 알고리즘 처럼 우선순위가 중요한 경우 ArrayDeque 사용한 큐 생성Queue queue = new ArrayDe..