| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 | 31 |
- coding
- priority queue
- PCCP
- HashMap
- 깊이우선탐색
- leetcode
- 부분배열
- 브루트포스
- dfs
- greedy
- recursion
- Java
- Algorithm
- 재귀함수
- 리트코드
- hashset
- binary tree
- string
- DP
- 우선순위 큐
- Array
- ArrayList
- programmers
- two pointers
- 알고리즘
- Today
- Total
목록string (5)
지식창고
[Java] 프로그래머스 PCCP 실전모의고사 - 외톨이 알파벳 문 제 : 알파벳 소문자로만 이루어진 어떤 문자열에서, 2회 이상 나타난 알파벳이 2개 이상의 부분으로 나뉘어 있으면 외톨이 알파벳이라고 정의합니다. 문자열 "edeaaabbccd"를 예시로 들어보면, a는 2회 이상 나타나지만, 하나의 덩어리로 뭉쳐있으므로 외톨이 알파벳이 아닙니다. "ede(aaa)bbccd" b, c도 a와 같은 이유로 외톨이 알파벳이 아닙니다. d는 2회 나타나면서, 2개의 부분으로 나뉘어 있으므로 외톨이 알파벳입니다. "e(d)eaaabbcc(d)" e도 d와 같은 이유로 외톨이 알파벳입니다. 문자열 "eeddee"를 예시로 들어보면, e는 4회 나타나면서, 2개의 부분으로 나뉘어 있으므로 외톨이 알파벳입니다. "(..
[Java] LeetCode 93. Restore IP Addresses 문 제 : 숫자로만 이루어진 String s가 주어진다. s에 적절히 점을 4개 추가하여 만들수 있는 유효한 IP주소 String을 모두 찾아서 List 형태로 반환해라. { 1 = s.length()) { res.add(temp.substring(0,temp.length()-1)); return; } for (int i=1; i
[Java] LeetCode 926. Flip String to Monotone Increasing 문 제 : 0과 1로 이루어진 문자열 s가 주어진다. 이 문자열을 최소한의 횟수로 수정해야한다. ※ 수정하는 기준 : - 증가하는 모양이여야 한다. ( ex_ 0011(O), 0010(X) ) - 0을 1로, 또는 1을 0으로 바꾸는 횟수가 최소여야 한다. A binary string is monotone increasing if it consists of some number of 0's (possibly none), followed by some number of 1's (also possibly none). You are given a binary string s. You can flip s[i] c..
[Java] LeetCode 1061. Lexicographically Smallest Equivalent String 문 제 : 같은 길이의 문자열 s1, s2가 주어진다. s1[i] == s2[i] 조건이 성립한다. 즉, 같은 인덱스의 문자들은 똑같다고 볼 수 있다. 이러한 방식으로 s1, s2에 속한 문자들을 그룹핑 해준다. baseStr의 문자열을 업데이트 해준다. ※ 그 기준은 baseStr 문자열에서 한 문자씩 보며 그룹에 포함이 되어 있는 문자이면 해당 그룹에서 가장 사전순서상의 처음 오는 문자로 대치해준다. You are given two strings of the same length s1 and s2 and a string baseStr. We say s1[i] and s2[i] are..
Leetcode 791. Custom Sort String - Java 문제 : s에 있는 문자열을 order 기준으로 정렬 Input: order = "cba", s = "abcd" Output: "cbad" 문자열 s 에서 각 알파벳이 몇 번 나왔는지 count 배열에 저장해 관리한다. int[] cnt = new int[128]; for(char ch : s.toCharArray()) { cnt[ch]++; } 정렬의 기준이 되는 문자열 order에 알파벳을 빠짐없이 들어갈 수 있도록 더해준다. order += "abcdefghijklmnopqrstuvwxyz"; Output을 저장할 변수 result를 선언한다. order를 기준으로 cnt 배열을 확인하며 결과 값에 저장한다. for(char c..