로딩
요청 처리 중입니다...

JAVA_LeetCode 316_Remove Duplicate Letters

 JAVA_LeetCode 316_Remove Duplicate Letters

JAVA_LeetCode 316_Remove Duplicate Letters 풀이 class Solution { public String removeDuplicateLetters(String s) { int[] lastIndex = new int[26]; // 각 문자의 마지막 등장 위치 boolean[] visited = new boolean[26]; // 스택 포함 여부 for(int i = 0; i < s.length(); i++) lastIndex[s.charAt(i) - 'a'] = i; StringBuilder stack = new StringBuilder(); // 스택 역할 (문자 추가/제거) for(int i = 0; i < s.length(); i++){ char c = s.charAt(i); if(visited[c - 'a']) continue; // 이미 포함 시 건너뜀 // 현재 문자보다 큰 문자 중 뒤에 다시 나올 수 있는 문자 제거 while(stack.l...