본문 바로가기

3

[Java] 메모리 관리 Stack & Heap 영역 너무 코딩을 할 때, 코드만 보고 따라친다는 느낌이 많은 요즘이다. 원리는 제대로 알고 하고있는걸까,, Stack Heap 영역에 생성된 Object 타입의 데이터의 참조값이 할당된다. 원시타입의 데이터가 값과 함께 할당된다. 지역변수들은 scope에 따른 visibility를 가진다. 각 Thread는 자신만의 stack을 가진다. Stack 영역에는 Heap 영역에서 생성된 Object 타입의 데이터들에 대한 참조를 위한 값들이 할당된다. 또한, 원시타입(primitive - types) - byte, short, int, long, double, float, boolean, char 타입의 데이터들이 할당된다. 이때 원시타입의 데이터들에 대해서는 참조값이 아닌, 실제 값을 stack에 직접 저장하게.. 2019. 7. 21.
[프로그래머스] 프린터 (level 2) java 문제 https://programmers.co.kr/learn/courses/30/lessons/42587 코딩테스트 연습 - 프린터 | 프로그래머스 일반적인 프린터는 인쇄 요청이 들어온 순서대로 인쇄합니다. 그렇기 때문에 중요한 문서가 나중에 인쇄될 수 있습니다. 이런 문제를 보완하기 위해 중요도가 높은 문서를 먼저 인쇄하는 프린터를 개발했습니다. 이 새롭게 개발한 프린터는 아래와 같은 방식으로 인쇄 작업을 수행합니다. 1. 인쇄 대기목록의 가장 앞에 있는 문서(J)를 대기목록에서 꺼냅니다. 2. 나머지 인쇄 대기목록에서 J보다 중요도가 높은 문서가 한 개라도 존재하면 J를 대기목록의 가장 마지막에 programmers.co.kr 이 문제를 풀기에 앞서 priorityQueue(Collections.r.. 2019. 5. 13.
[자료구조] 우선순위 큐(PriorityQueue) + 힙(Heap) - 2 프로그래머스 프린터라는 문제를 풀다가 의아한 점이 생겼다. PriorityQueue priority = new PriorityQueue(Collections.reverseOrder()); 우선순위 큐를 사용하기 위해 우선순위 큐를 생성하고, 문제에서 숫자가 클 수록 우선순위가 높다고 요구하여 내림차순으로 설정을 했다. 그런데 우선순위 큐에 {2,5,4,1,3}을 넣었을 때 내가 단순히 생각하기에는 {5,4,3,2,1}이 나올 것이라고 생각했지만, 실제로는 {5,3,4,1,2}가 나왔다. ??? 자바 공식 문서에서도 reverseOrder() Returns a comparator that imposes the reverse of the natural ordering. 라고 했다. 내림차순이라는 소리다. 알.. 2019. 5. 13.