给定两个字符串,请设计一个方法来判定其中一个字符串是否为另一个字符串的置换。
置换的意思是,通过改变顺序可以使得两个字符串相等。
您在真实的面试中是否遇到过这个题? Yes 样例"abc" 为 "cba" 的置换。
"aabc" 不是 "abcc" 的置换。
输入可能为ascii码里任何一个
public class Solution { /* * @param A: a string * @param B: a string * @return: a boolean */ public boolean Permutation(String A, String B) { // write your code here if(A.length() != B.length()){ return false; } int[] chaA = new int[128]; int[] chaB = new int[128]; for(int i=0 ; i < 128;i++){ chaA[i] = 0; chaB[i] = 0; } for(int i= 0 ; i<A.length() ; i++){ char tempA = A.charAt(i); char tempB = B.charAt(i); chaA[tempA]++; chaB[tempB]++; } for(int i = 0;i<128;i++){ if(chaA[i] != chaB[i]){ return false; } } return true; } };