반응형
문제 링크
https://leetcode.com/problems/find-all-anagrams-in-a-string/
내 코드
public List<Integer> findAnagrams(String s, String p) {
List<Integer> list = new ArrayList<>();
if (s.length() < p.length()) {
return list;
}
int[] sChar = new int[26];
int[] pChar = new int[26];
for (int i = 0; i < p.length(); i++) {
pChar[p.charAt(i) - 'a'] += 1;
}
int si = 0;
for (int i = 0; i < s.length(); i++) {
sChar[s.charAt(i) - 'a'] += 1;
if (i - si + 1 != p.length()) continue;
if (Arrays.equals(sChar, pChar)) {
list.add(si);
}
sChar[s.charAt(si) - 'a'] -= 1;
si++;
}
return list;
}
결과
문제 풀이 방법을 조금 바꿔보고 있다.
모르는 문제는 일단 풀어보지만 30분 이후에도 틀린다면 바로 답을 보고
복붙하는것이 아니라 내가 효율적이라고 생각하는대로 조금씩 바꾸는중!!!
언젠간 잘 하겠지....ㅠㅠㅠ
반응형
'Algorithm' 카테고리의 다른 글
[Algorithm][Array] 문제 풀이 #16 - Ransom Note (0) | 2022.08.01 |
---|---|
[Algorithm][Array] 문제 풀이 #15 - Group Anagrams (0) | 2022.07.28 |
[Algorithm][Array] 문제 풀이 #13 - Longest Repeating Character Replacement (0) | 2022.07.25 |
[Algorithm][Array] 문제 풀이 #12 - Longest Substring Without Repeating Characters (0) | 2022.07.24 |
[Algorithm][Array] 문제 풀이 #11 - Valid Palindrome (0) | 2022.07.20 |