자연수의 오름차순 배열
- 1 2 ... N 인 경우에는
- index(pointer) == value 가 되므로, 굳이 배열을 만들지 않아도 되는 상황이 있다
-
그렇지만 value가 들쭉날쭉 하다면, 배열을 만들 필요가 있다
(알고리즘 006번, 007번 참조)
-
또 index - value 쌍을 할당하는 게 아니라,
value만 가지고 바로 작업할 수 있는 경우를 한 번 생각해 봐야 한다(배열 자체보다는 target이 무엇인지)
for (int i = 0; i < N; i++) {
int now = Integer.parseInt(st.nextToken());
while (!mydeque.isEmpty() && mydeque.getLast().value > now) {
mydeque.removeLast();
}
mydeque.addLast(new Node(now, i));
if (mydeque.getFirst().index <= i - L) {
mydeque.removeFirst();
}
// OEC
bw.write(mydeque.getFirst().value + " ");
}
'코테 기초' 카테고리의 다른 글
외부 모듈과 외부 인자 공급 (0) | 2022.12.05 |
---|---|
SLIDING WINDOW (0) | 2022.12.05 |
Two Pointers (0) | 2022.12.05 |
remainder를 사용하는 구간의 합 (0) | 2022.12.03 |
2차원 배열의 구간 합 (0) | 2022.12.03 |