프로그래밍/Algorithm

문자열 두개를 받아 그 중 하나가 다른 하나의 순열인지 판단하라

모지사바하 2015. 7. 29. 17:35
/**
* Created by kwo2002 on 2015-07-29.
* 문자열 두개를 받아 그 중 하나가 다른 하나의 순열인지 판단하라
*/

object Permutation {

def permutation1(a: String, b: String): Boolean = {
if (a.trim.length != b.trim.length) {
false
}else {
a.sorted.equalsIgnoreCase(b.sorted)
}
}


def main(args: Array[String]) {
println(permutation1("aaccbb", "bbccaa"))
}
}

1. 공백은 무시. 대소문자 무시

2. 문자열 길이가 다르다면 무조건 순열이 아님.

3. 문자열을 문자열.sorted 로 정렬한 후 비교

참고로 자바에서 문자열을 정렬하려면 toCharArray 로 문자 배열로 변환한 후 Arrays 를 이용하여 정렬하여야함.


4. 이 방법이 깔끔하긴 하나 효율성으로 봤을때 최선은 아님.

5. 다른 방법으로 풀어보자.