Valid Anagram 문제풀이 - Java 사용




매개변수 s와 t를 입력받으면 알파벳을 담은 변수를 생성하고 해당변수에 있는 값을 비교를하면서 값이맞으면 true를 리턴하는 방식
class Solution {
public boolean isAnagram(String s, String t) {
if (s.length() != t.length()) {
return false;
}
// 알파벳을 담을 변수 2개 생성 -> 매개변수 s,t를 alph와 alph2에 담은후 값을 저장하여 비교할 예정
int[] alph = new int[26];
int[] alph2 = new int[26];
// 문자열 길이 만큼 for문을 돌려 alph와 alph2에 있는 자리에 값을 증가시킴
for (int i = 0; i < s.length(); i++) {
// a가 들어가고 charAt 문자열 추출
char sArray = s.charAt(i);
// n이 들어감
char tArray = t.charAt(i);
alph[sArray-97]++; // 배열 첫번째 에 1 -> a
alph2[tArray-97]++; //n일경우 110 - 97 = 13 13번쨰 배열에 1로
//g가 들어올시 아스키코드 103 - 97 = 6 6번쨰배열에 1증가
}
// alph와 alph2에 있는 변수를 비교하여 같지 않으면 false 같으면은 true가 됨
for (int i = 0; i < alph.length; i++) {
if (alph[i] != alph2[i]) {
return false;
}
}
return true;
}
}
'LeetCode 알고리즘 문제풀이' 카테고리의 다른 글
[LeetCode-171] Excel Sheet Column Number 문제풀이 - Java 사용 (0) | 2020.09.18 |
---|---|
[LeetCode-217] Contains Duplicate 문제풀이 - Java 사용 (0) | 2020.09.17 |
[LeetCode-53] Maximum Subarray 문제풀이 - Java 사용 (0) | 2020.09.15 |
[LeetCode-13] Roman to Integer 문제풀이 - Java 사용 (0) | 2020.09.14 |
[LeetCode-283] Move Zeroes 문제풀이 - Java 사용 (0) | 2020.09.13 |