Lv 2. 프로세스

2024. 6. 14. 16:53·Algorithm & Data Structures/Programers

 

우선순위 queue를 이용하여 문제를 해결하였다 우선순위 queue를 이용하면 알아서 정렬이 되므로 우선순위를 매기고 

for 문을 통해 처음부터 끝까지 돌아가면서 우선순위에 해당하는 인자를 빼내었다.

 

import java.util.*;

class Solution {
    public int solution(int[] priorities, int location) {
        PriorityQueue<Integer> q = new PriorityQueue<>(Collections.reverseOrder());
        int answer = 0;

        for (int i : priorities) 
            q.add(i);

        while (!q.isEmpty()) {
            for (int i = 0; i < priorities.length; i++) {
                if (q.peek() == priorities[i]) {
                    q.poll();
                    answer++;
                    if (location == i) {
                        return answer;
                    }
                }
            }
        }

        return answer;
    }
}

 

- 우선순위 queue의 경우에는 선언시 어떤 기준으로 선언할 것인지 옵션을 넣을 수 있다. 위 문제의 경우 
Collections.reverseOrder() 로 내림차순 옵션을 주었다.

우선순위 queue 이외의 경우에 다른 자료구조들 또한 옵션을 넣을 수 있는지 확인해 본바. 다른 자료구조들에서도 옵션을 줄 수 있었다. 하지만 자료구조의 특성에 맞는 옵션들만 가능했었다. 예를들어 자료구조의 크기라던지 자료구조에 대입할 배열 리스트 등을 넣을 수 있었다. 

위 개념은 처음접해보았기에 자료구조에 대해 조금더 깊이 공부할 필요를 느꼈다.

 

'Algorithm & Data Structures > Programers' 카테고리의 다른 글

Lv 2. [1차] 뉴스 클러스터링  (0) 2024.06.18
Lv 2. 피로도  (0) 2024.06.17
Lv 2. 튜플  (0) 2024.06.13
Lv 2. 기능개발  (1) 2024.06.10
Lv 2. 1차 캐시  (0) 2024.06.02
'Algorithm & Data Structures/Programers' 카테고리의 다른 글
  • Lv 2. [1차] 뉴스 클러스터링
  • Lv 2. 피로도
  • Lv 2. 튜플
  • Lv 2. 기능개발
Geisha
Geisha
개발 일기
  • Geisha
    Geisha
    Geisha
  • 전체
    오늘
    어제
    • 분류 전체보기 (316) N
      • Algorithm & Data Structures (238) N
        • BOJ (96) N
        • SWEA (1)
        • Programers (137)
        • Data Structures (3)
      • DB (25)
        • SQL (19)
        • RDBMS (2)
      • Java (1)
        • Class (1)
      • Spring (5)
        • Spring MVC (1)
        • Annotations (1)
      • CS (36)
        • 운영체제 (13)
        • 네트워크 (5)
      • Tool (6)
        • Git (5)
        • AWS (1)
      • Project (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    알고리즘
    백준
    동적계획법
    Java
    프로그래머스
    baekjoon
    골드
    dp
    SQL
    Stack
    유니온파인드
    PriorityQueue
    binarySearch
    unionfind
    백트래킹
    DynamicProgramming
    algorithm
    Union-Find
    후위순회
    Dijkstra
    dfs
    스택
    구현
    BFS
    투포인터
    다익스트라
    programmers
    전위순회
    경로압축
    이분탐색
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
Geisha
Lv 2. 프로세스
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.