import java.util.*;
class Solution {
public int solution(String before, String after) {
int answer = 0;
char[] ch1 = before.toCharArray();
char[] ch2 = after.toCharArray();
Arrays.sort(ch1);
Arrays.sort(ch2);
if(Arrays.toString(ch1).equals(Arrays.toString(ch2)))
{
return 1;
}
return answer;
}
}
map 이용해서 하는 방법
import java.util.*;
class Solution {
public int solution(String before, String after) {
int answer = 0;
Map<String, Integer> map = new HashMap();
for(char ch : before.toCharArray())
{
if(map.containsKey(ch+"")){
int count=map.get(ch+"");
map.put(ch+"", count+1);
}
else{
map.put(ch+"",1);
}
System.out.println(map);
}
return answer;
}
}
containsKey를 이용해서 문자의 개수를 세서 각 문자들의 개수가 같다면 1을 return
char는 기본 데이터 타입이기때문에 Map의 키로 사용불가하기 때문에 String으로 했고,
char ch 를 String으로 형변환을 해줘야 하기 때문에 ch+""를 함
'코딩테스트 > lv0' 카테고리의 다른 글
[프로그래머스 코딩테스트] java Lv.0 한 번만 등장한 문자 (0) | 2024.08.07 |
---|---|
[프로그래머스 코딩테스트] java Lv.0 숨어있는 숫자의 덧셈(2) (0) | 2024.08.06 |
[프로그래머스 코딩테스트] java Lv.0 가까운 수 (0) | 2024.08.06 |
[프로그래머스 코딩테스트] java Lv.0 모스부호(1) (0) | 2024.07.19 |
[프로그래머스 코딩테스트] java Lv.0 진료 순서 정하기 (0) | 2024.07.19 |