《Cracking the Coding Interview》——第1章:数组和字符串——题目1
2024-08-25 15:06:24
2014-03-18 01:25
题目:给定一个字符串,判断其中是否有重复字母。
解法:对于可能有n种字符的字符集,用一个长度为n的数组统计每个字符的出现次数,大于1则表示有重复。
代码:
// 1.1 Implement an algorithm to determine if a string has all unique characters. What if you cannot use additional data structure?
#include <cstdio>
#include <cstring>
using namespace std; class Solution {
public:
bool isAllUnique(const char *s) {
if (nullptr == s) {
return false;
}
int i; int a[];
memset(a, , * sizeof(int));
for (i = ; s[i]; ++i) {
if (a[s[i]]) {
return false;
} else {
a[s[i]] = ;
}
} return true;
};
}; int main()
{
Solution sol;
char s[]; while (scanf("%s", s) == ) {
if (sol.isAllUnique(s)) {
printf("Unique.\n");
} else {
printf("Not unique.\n");
}
} return ;
}
最新文章
- JavaScript的基准测试-不服跑个分?
- PHP同时上传“多个”文件示例,并格式化$_FILES数组信息
- RabbitMQ模拟器使用方法
- 通过页面调用APP【H5与APP互通】
- spring mvc学习笔记一:hello world
- SolrCloud的官方配置方式
- 1、java中常用名字规范
- WWDC2015 结束.新一波更新以及bug即将来袭.
- 第三方登录之qq登录(转载)
- TortoiseSVN,排除不想提交文件的方法(转)
- C#入门篇6-8:字符串操作 深入研究字符串的内存驻留机制
- UVA 11149 Power of Matrix 快速幂
- SSL证书制作
- 从零开始用 Flask 搭建一个网站(二)
- window.onerror 应用实例
- python自动化运维七:fabric
- MySQL 各类日志文件介绍
- 个人 git-hub使用方法
- jdango
- 用java代码解决excel打开csv文件乱码问题