스택(2)
-
스택과 큐
자료구조 중 스택과 큐는 많이 들어보았지만, 항상 뭐가 뭔지 헷갈렸다. 이번 기회에 제대로 확실히 정리해보고자 한다! 일단 자료구조란 배열처럼 데이터를 저장하고 관리할 수 있는 것이다. 스택과 큐는 데이터를 어떻게 저장하고 관리하는지 알아보자 ! 스택은 후입선출 js에서 push()는 삽입, pop()은 삭제 함수이다. ex) 인터넷의 뒤로가기(그동안 쌓였던 것들의 뒷부분 부터 차례로 뒤로가기 됨) 큐는 선입선출 queue에 삽입하는 것은 enqueue라 하고, 삭제하는 것은 dequeue라고 한다. 마찬가지로 push()는 삽입, shift()는 가장 앞의 것 삭제 함수이다. ex) 은행창구 번호표(들어온 순서대로 나감) 시간복잡도에 대해 이야기 하자면 push()와 pop()은 O(1)의 시간복잡도를..
2023.03.02 -
[프로그래머스] 프린터
ㅊ맨 앞에 있는 파일이 가장 높은 중요도여야 출력할 수 있음 가장 높지 않다면, 맨 뒤로 이동 => 프린터 순서를 하나의 통로로 생각하면 편하다. 한 칸씩 앞으로 이동하고, 더 이상 이동할 곳이 없다면 가장 뒤로 이동! 배열 형태로 저장된 파일들을 앞에서 빼고, 뒤에 이어 붙이는 것은 이 두 함수를 사용하면 된다 앞에서 빼기: shift() 뒤에 이어붙이기: push(붙일 파일) 1. 원하는 값이 인쇄될 때까지 반복 2. 현재 가장 큰 중요도 max값 찾기 3. 가장 앞의 값 빼기 4. max와 가장 앞의 값이 같으면 4-1. 인쇄횟수 num +=1 4-2. 방금 인쇄된 것이 원했던 인쇄물이면 끝 5. max와 가장 앞의 값이 다르면 5-1. 맨 뒤에 다시 붙임 5-2. 맨 뒤로 이동한 것이 원했던 인쇄..
2023.03.02