코딩테스트
[프로그래머스/자바] 캐시_17680
라임온조
2023. 8. 8. 18:00
1. 생각
// 생각
// 도시이름을 돌면서 캐시에 있는지 없는지, 자리 있는지 등 확인한 후 하나 거칠 때 마다 상황에 맞게 실행시간 더하기
// 캐시를 만들어야 하는데 큐를 이용해서 만들 수 있다
// 구현
// 큐 만들기
// 도시이름 돌기
// 만약 큐에 해당 도시가 없으면서 캐시크기 안 넘쳤다
// map에 해당 도시 넣고 횟수 1로 만들기
// 정답 5 더하기
// 큐에 해당 도시가 없으면서 캐시크기 넘쳤다
// 최근에 가장 적게 사용된 거 하나 빼고 해당 도시를 넣는다
// 정답 5 더하기
// 큐에 해당 도시가 있다
// 정답 1 더하기
2. 회고
- 엄청 어렵지는 않았는데 뭐에 홀렸는지 왜 큐라는 생각이 바로 안 들었지..? 막 우선순위큐 해야 하는 거 아니야? 이러다가 놓쳤네
3. 기억
- LRU
- 가장 예전에 사용된 걸 먼저 삭제하기
- 큐에서 remove 메서드에 특정 값을 넣어주면 그 값을 삭제할 수 있다
4. 체크
풀이 횟수 | 시간 | 정답 여부 | 참고 여부 |
1 | 1시간 20분 | X | O |