문제(원문)문제(번역)정수 배열 nums가 주어졌을 때, 배열 속 모든 0을 0이 아닌 원소의 순서를 유지하며 오른쪽 끝으로 이동해라.이 문제를 풀 때 배열을 복사하지 말고 in-place(추가적인 배열 공간을 선언하지 않고)로 풀어야 합니다. 접근 방법처음에는 in-place 제한을 보지 못했다.새 배열을 선언하고, 기존 배열을 순회하면서 0이 아닌 원소만 새 배열에 추가하고 남은 만큼 0을 채우는 솔루션을 생각했다.이러면 \(O(N)\)으로 문제를 풀 수 있다. in-place 제한을 보고 난 뒤에는 배열을 순회하면서 0을 만나면, nested loop를 사용해 가장 가까운 0이 아닌 수를 찾고 swap을 하게 코드를 작성했다. 이러면 \(O(n^2)\)으로 풀 수 있다. 하지만 조금만 더 최적화를 ..
Problemhttps://school.programmers.co.kr/learn/courses/30/parts/12117 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr우선순위 디스크 컨트롤러 라는 가상의 장치는 아래와 같이 동작한다.어떤 요청이 들어올 때, 작업의 번호, 요청 시각, 소요 시간을 저장해두는 대기 큐가 있다.작업의 우선순위가 가장 높은 작업을 큐에서 꺼내 작업한다.우선순위 => 소요시간이 짧은 것 > 요청 시각이 빠른 것 > 작업의 번호가 작은 것 한번 작업을 시작하면 작업을 마칠때까지 그 작업만 수행한다.모든 요청 작업을 마쳤을때 각 작업에 대한 반환시간은 작업 요청부터 종료까지 걸린..
Problemhttps://school.programmers.co.kr/learn/courses/30/parts/12117 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 이중 우선순위 큐는 다음 연산을 할 수 있다명령어연산 내용I 숫자큐에 주어진 숫자를 삽입D 1큐에서 최댓값을 삭제D -1큐에서 최솟값을 삭제이 중 우선순위 큐가 할 연산이 주어질 때, 모든 연산을 처리한 후 큐가 비어있으면 [0, 0] 을 반환해라비어있지 않으면 [최댓값, 최솟값]을 반환해라.Input / Output Examplesoperationsreturn["I 16", "I -5643", "D -1", "D 1", "D 1", ..