lintcode刷题--比较字符串
2015-11-24 14:36
274 查看
解答:
hash[256] :记录A中字母出现的次数
遍历B串,将hash表中的对应位置计数器-1。值为负,返回 false,结束
最后,返回 true
代码:
public class Solution {
/**
* @param A : A string includes Upper Case letters
* @param B : A string includes Upper Case letter
* @return : if string A contains all of the characters in B return true else return false
*/
public boolean compareStrings(String A, String B) {
// write your code here
if(A == null)
return false;
if(B == null)
return true;
int[] hash = new int[256];
for(int i =0; i<256; i++)
hash[i] = 0;
int loc =0;
for(int i =0; i < A.length();i++){
hash[A.charAt(i)]++;
}
for(int i =0; i < B.length();i++){
hash[B.charAt(i)]--;
if( hash[B.charAt(i)] < 0)
return false;
}
return true;
}
}
hash[256] :记录A中字母出现的次数
遍历B串,将hash表中的对应位置计数器-1。值为负,返回 false,结束
最后,返回 true
代码:
public class Solution {
/**
* @param A : A string includes Upper Case letters
* @param B : A string includes Upper Case letter
* @return : if string A contains all of the characters in B return true else return false
*/
public boolean compareStrings(String A, String B) {
// write your code here
if(A == null)
return false;
if(B == null)
return true;
int[] hash = new int[256];
for(int i =0; i<256; i++)
hash[i] = 0;
int loc =0;
for(int i =0; i < A.length();i++){
hash[A.charAt(i)]++;
}
for(int i =0; i < B.length();i++){
hash[B.charAt(i)]--;
if( hash[B.charAt(i)] < 0)
return false;
}
return true;
}
}
相关文章推荐
- java web服务器上画图不显示的问题
- android应用跳转到市场评分功能
- Android开发笔记(序)写在前面的目录
- 从pullToRefreshListview中获取listview
- Android开发笔记(序)写在前面的目录
- maven nexus私服搭建
- APP设计尺寸规范大全,APP界面设计新手教程【官方版】
- 数组中最接近N的数
- java NIO简介
- unbuntu14.04 安装nginx配置
- input 的属性autocomplete【历史记录属性】
- linux的vnc- rdesktop远程登录windows桌面
- cocos2dx 动作Sequence和Spawn包含RepeatForever的方法解决
- 粒子群算法(一)
- android 下载文件
- oracle部门员工表查询
- PowerShell,远程操作,读写复制备份文件
- 模板页重新声明变量,为变量赋值
- Call an activity method from a fragment
- @Pointcut的用法