cricking code 1.1
来源:互联网 发布:如何改变自己 知乎 编辑:程序博客网 时间:2024/04/30 13:29
#include<iostream>#include<string>using namespace std;//面试题一般以接口的形式给出bool isUniqeString(string s){int len = s.length();if(!len)return true;bool flag[256]={0};for(int i=0;i<len;i++){if(flag[s[i]])return false;else flag[s[i]]=true;}return true;}//方法2,用bitmap来节省空间bool isUniqeStringByBitmap(string s){int intlen=sizeof(int)*8;int* flag= new int[256/intlen];int s_len=s.length();if(!s_len)return true;for(int i=0;i<s_len;i++){int res=(int)s[i];int a=res/intlen;int b=res%intlen;if((flag[a]&(1<<b)))return false;else flag[a]|=(1<<b);//给对应的位置1,如:34 a=34/32=1;b=34%32=2; 2的二进制为0000 0010 右移1位或之后为0000 0100}return true;}int main(){string s;getline(cin,s);printf("%s\n",isUniqeString(s)?"true":"false");printf("%s\n",isUniqeStringByBitmap(s)?"true":"false");return 0;}
题意:判断一个字符串中是否有重复出现的字符
用位图来表示字符是否重复出现
如:abcde
true
true
如:abcdea
false
false
0 0
- cricking code 1.1
- Code Analyser 1.1 发布
- code
- code
- code
- code
- Code
- code
- code
- Code
- Code
- CODE
- code
- code
- code
- code
- code
- code
- libevent源代码分析--buffer的使用
- UITabbarController点击tabbar选项返回当前viewController最顶层
- 神啊,赶紧崩溃吧,再不崩溃,地球人都要混不下去了。
- [C# 基础知识系列]专题十一:匿名方法解析
- 个人浅谈虚拟货币--论比特币跟瑞波币
- cricking code 1.1
- 黑马程序员——反射
- 【EXCEL】 EXCEL VBA SQL UPDATE:操作必须使用一个可更新的查询
- ARM-交叉编译器各版本的区别
- 黑马程序员——抽象类&接口
- 内核缓冲区应用
- Learning OpenCV 2-3 视频播放控制
- 2014网络红人排行榜
- websocket