题目:判断字符串是否没有重复字符
2015-08-19 18:59
477 查看
通过
实现一个算法确定字符串中的字符是否均唯一出现
您在真实的面试中是否遇到过这个题?
Yes
哪家公司问你的这个题?
Airbnb
Alibaba
Amazon Apple
Baidu Bloomberg
Cisco Dropbox
Ebay Facebook
Google Hulu
Intel Linkedin
Microsoft NetEase
Nvidia Oracle
Pinterest Snapchat
Tencent Twitter
Uber Xiaomi
Yahoo Yelp
Zenefits
感谢您的反馈
样例
给出
给出
挑战
如果不使用额外的存储空间,你的算法该如何改变?
标签 Expand
字符串处理
Cracking The Coding Interview
数组
相关题目 Expand
public class Solution {
/**
* @param str: a string
* @return: a boolean
*/
public boolean isUnique(String str) {
// write your code here
if(str == null||str.length() ==0) return true;
int arr[] = new int[256];
boolean flag = true;
for(int i=0;i<256;i++){
arr[i] = 0;
}
for(int i=0;i<str.length();i++){
arr[(int)str.charAt(i)] =arr[(int)str.charAt(i)]+1;
}
for(int i=0;i<256;i++){
if(arr[i]>1){
flag = false;
break;
}
}
return flag;
}
}
没有额外开销的AC代码
public class Solution {
/**
* @param str: a string
* @return: a boolean
*/
public boolean isUnique(String str) {
// write your code here
if(str == null||str.length() ==0) return true;
boolean flag = true;
for(int i=0;i<str.length();i++){
for(int j=0;j<i;j++){
if(str.charAt(i)==str.charAt(j)){
flag = false;
break;
}
}
}
return flag;
}
}
实现一个算法确定字符串中的字符是否均唯一出现
您在真实的面试中是否遇到过这个题?
Yes
哪家公司问你的这个题?
Airbnb
Alibaba
Amazon Apple
Baidu Bloomberg
Cisco Dropbox
Ebay Facebook
Google Hulu
Intel Linkedin
Microsoft NetEase
Nvidia Oracle
Pinterest Snapchat
Tencent Twitter
Uber Xiaomi
Yahoo Yelp
Zenefits
感谢您的反馈
样例
给出
"abc",返回
true
给出
"aab",返回
false
挑战
如果不使用额外的存储空间,你的算法该如何改变?
标签 Expand
字符串处理
Cracking The Coding Interview
数组
相关题目 Expand
public class Solution {
/**
* @param str: a string
* @return: a boolean
*/
public boolean isUnique(String str) {
// write your code here
if(str == null||str.length() ==0) return true;
int arr[] = new int[256];
boolean flag = true;
for(int i=0;i<256;i++){
arr[i] = 0;
}
for(int i=0;i<str.length();i++){
arr[(int)str.charAt(i)] =arr[(int)str.charAt(i)]+1;
}
for(int i=0;i<256;i++){
if(arr[i]>1){
flag = false;
break;
}
}
return flag;
}
}
没有额外开销的AC代码
public class Solution {
/**
* @param str: a string
* @return: a boolean
*/
public boolean isUnique(String str) {
// write your code here
if(str == null||str.length() ==0) return true;
boolean flag = true;
for(int i=0;i<str.length();i++){
for(int j=0;j<i;j++){
if(str.charAt(i)==str.charAt(j)){
flag = false;
break;
}
}
}
return flag;
}
}
相关文章推荐
- GET-POST请求,数据的持久化
- mysql information_schema
- Bitmap基本概念及在Android4.4系统上使用BitmapFactory的注意事项
- 生活感悟
- 题目:删除链表中倒数第n个节点
- 图像处理
- Parallels Desktop如何创建虚拟机模板
- 题目:删除排序链表中的重复元素
- main() 参数:argc 与 argv
- Android笔记(三)为按钮添加事件
- linux下类似Bus Hound的工具
- 字符串常用函数汇总【持续更新中........】
- [LightOJ1370]Bi-shoe and Phi-shoe
- 题目:删除排序数组中的重复数字 II
- Linux 命令行Shell快捷键
- HDU-1875 畅通工程再续(最小生成树[Prim])
- 暗色调,调出紫红色的暗调晨曦照片效果(转)
- ios 点击返回顶部效果的实现,类似单击状态栏效果
- 学习资料备忘录
- 【LeetCode】116. Populating Next Right Pointers in Each Node