校招准备系列:每天一道算法题(2)

来源:互联网 发布:sql注入绕过过滤 编辑:程序博客网 时间:2024/05/20 04:14

校招准备系列:每天一道算法题(2)

PS:买的《程序员面试金典》,所以从现在开始每天刷一两道题,坚持到下半年校招,希望自己的算法能力有一个长足的提高,以在校招中能找到一份好的工作!


1.3、给定两个字符串,请编写程序,确定其中一个字符串的字符重新排列后,能否变成另一个字符串。


思路分析:对于这个问题,首先考虑的是题目中的重新排列后的变位词比较是否区分大小写,是否需要考虑空白的情况。。。

方法:排序,然后比较

public static String sort(String s){        char[] content = s.toCharArray();        java.util.Arrays.sort(content);        return new String(content);    }    public static boolean permutation(String s,String t){        if(s.length()!=t.length()){            return false;        }        return sort(s).equals(sort(t));    }

写出完整测试代码如下:

package chen.zhou.chous;public class Pdzfc {    public static void main(String[] args) {        String s = "hello";        String t = "olleh ";        if(permutation(s, t)){            System.out.println("经过重新排列后,能变成另外一个字符串");        }else {            System.out.println("不能!");        }    }    public static String sort(String s){        char[] content = s.toCharArray();        java.util.Arrays.sort(content);        return new String(content);    }    public static boolean permutation(String s,String t){        if(s.length()!=t.length()){            return false;        }        return sort(s).equals(sort(t));    }}

结束语:坚持每一天,继续努力!!!

1 0