갱신 배열과 정답 배열을 따로 두어 갱신한다.Arrays.sort의 기준기준 인덱스 있을때 새로운 인덱스 구하기(투포인터)
LinkedList.remove(int idx) 인덱스의 원소 삭제 후 해당되는 원소반환LinkedList.remove(String value) -> value가 있으면 삭제하고 true반환 없으면 false 반환
String.format("",targetStr); -> %16s 16글자로 앞에 채워서String.replaceAll("","") -> 새로운 문자열 반환하므로 갱신을 위해서는 재 할당 해준다.
문제 링크객체 정렬 -> Comparable.compareTo Or comparatorPriorityQueue -> 기본적으로 최소 큐이다.ArrayList로 정의된 객체에 접근할때 listnum이 아닌 list.get(num)으로 접근한다.
백트래킹으로 가능한 모든 조합 구하기 + 백트래킹시 조건에 맞는 것만 카운트하기후보키가 되기 위해서는 최소성(키 중 하나 빼도 키로서 작용), 유일성(키로 조회시 중복 레코드 없음)을 만족해야한다.
for 문 step과정 잘 조절하기,substring(1,2)에서 2는 포함되지 않는다.
dfs이용하여 조합 만들기 comb함수binarySearch로 효율적인 최소 범위 찾기Collections.sort(map.get(tmp0) 돌릴 블록 잘 선택하기
String.replace("target","원하는 값");String.substring(int startIdx, int endIdx);sb.replaceAll("정규 표현식","원하는 값");
Map.Entry.getValue()getKey()로 키,값 독립적으로 조회하기String 정렬 방법:String -> String.toCharArray() -> Arrays.sort(배열) -> String.valueOf(charArr)
Collection 내부의 원소가 참조형(클래스, 다른 콜렉션등)일때한번 참조하면 재갱신 안해도된다.Map.put(참조함,갱신값) -> 불필요시간 비교할때 분으로 나타낸 값으로 비교하면 편하다./
배운점:Stringbuilder sb = new StringBuilder();sb.reverse().toString() -> 단어 뒤집기소수 판별시: i\*i<=num 보다 i<Math.sqrt(num)이 더 빠르다10진수 n을 k진법 변환시: temp =
아이디어: 1.두 큐를 모두 바라 보는게 아니라 하나의 큐만 바라봐서 전체합의 반이 돼는지 점검2\. 두 큐 원소합의 두 배 이상이 되면 한 바퀴 돌린것과 같아서 종료조건이다.배운점:Queue = new LinkedList