找出数组中第一个只出现一次的字符
2013-11-08 23:28
411 查看
引言:
这个 程序的设计巧妙地利用了哈希思想,因为字符的特殊性,不必使用专门的哈希函数,可以用较为简单的数组代替。具体实现:
//找出数组中第一个只出现一次的字符 #include <iostream> using namespace std; int main() { int i; int pindu = 256; int Index = 23; int haha = 0; int cnt = 0; int Count[256] = {0}; int sequence[256] = {0}; char str[] = "QWERTYUIQWER"; for(i=0;str[i] != '\0' ; i++) { Count[(int)(*(str+i))] ++; sequence[(int)(*(str+i))] = cnt ++; } for(i = 0;i < 256 ;i++) { if(Count[i] == 1) { haha++; if( sequence[i] < pindu) { pindu = sequence[i]; Index = i; } } } if(haha == 0) { cout << "-1" << endl; return -1; } cout << "数组下标为" << pindu << endl; cout << "第一次只出现一次的字符为" << str[pindu] << endl; return 0; }
相关文章推荐
- 给定一个字符数组,从中找出第一个只出现一次的字母
- 华为OJ——找出字符串中第一个只出现一次的字符
- 华为OJ题库-找出字符串中第一个只出现一次的字符
- 找出字符串中第一个只出现一次的字符
- 【笔试题】C语言:在字符串中找出第一个只出现一次的字符。如输入“abaccdeff”,则输出'b'。
- 【华为OJ】【034-找出字符串中第一个只出现一次的字符】
- 华为OJ——找出字符串中第一个只出现一次的字符
- 360笔试题(2016年)—找出第一个出现一次的字符
- 找出字符串中第一个只出现一次的字符
- 《剑指offer》-找出字符流中第一个只出现一次的字符
- 找出字符串中第一个只出现一次的字符
- 剑指-在字符串中找出第一个只出现一次的字符
- [华为]找出字符串中第一个只出现一次的字符
- 在字符串中找出第一个只出现一次的字符
- 找出字符串中第一个只出现一次的字符
- 数组中第一个只出现一次的字符
- 华为OJ 初级:找出字符串中第一个只出现一次的字符
- 华为机试-找出字符串中第一个只出现一次的字符
- 找出字符串中第一个只出现一次的字符
- 使用递归算法重做:找出字符串中第一个只出现一次的字符