您的位置:首页 > 编程语言 > Java开发

从零开始学习算法(Java实现)~~~~之字符串篇~~~判断两个字符串是否是颠倒字母顺序构成的

2015-06-01 20:41 1011 查看
从今天开始记录一下学习算法的例程,贵在坚持!

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

样例
给出 s=
"abcd"
,t=
"dcab"
,返回
true


难都系数*

以下是java代码实现:

public class Solution {
/**
* @param s: The first string
* @param b: The second string
* @return true or false
*/
public boolean anagram(String s, String t) {
// write your code here
//若两个字符串的长度不相等直接返回false
if(s.length()!=t.length()){
return  false ;
}
//定义一个存储字符ASSIC值的数组
int[] count = new int[256];
for(int i=0;i<s.length();i++){
//遍历字符串,将每一个字符的ASSIC码值作为数组下标的索引,并将对应的数组值+1
count[(int)s.charAt(i)]++;
}
for(int j=0;j<t.length();j++){
<pre name="code" class="java">//遍历字符串,将每一个字符的ASSIC码值作为数组下标的索引,并将对应的数组值-1
count[(int)t.charAt(j)]--; if(count[(int)t.charAt(j)]<0){


//若存在任一对应位置的的值小于0,返回false
return false ;
}
}
return true;
}
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: