面试题:两个字符串是变位词

难度:容易

 

写出一个函数 anagram(s, t) 去判断两个字符串是否是颠倒字母顺序构成的。

样例

给出 s="abcd",t="dcab",返回 true。S="abcd",T="aabd",返回 false。

 

答案:

 1 public class Solution {
 2     /**
 3      * @param s: The first string
 4      * @param b: The second string
 5      * @return true or false
 6      */
 7     public boolean anagram(String s, String t) {
 8         ArrayList<String> arr = new ArrayList<>();
 9         for(int i=0; i<s.length(); i++) {
10             String key = s.substring(i, i+1);
11             arr.add(key);
12         }
13         
14         for(int i=0; i<t.length(); i++) {
15             String key = t.substring(i, i+1);
16             int j = arr.indexOf(key);
17             if(j < 0) {
18                 return false;
19             } else {
20                 arr.remove(j);
21             }
22         }
23         
24         return true;
25     }
26 };

 

posted @ 2015-08-29 01:26  -小城-  阅读(320)  评论(0编辑  收藏  举报