`
java-mans
  • 浏览: 11424889 次
文章分类
社区版块
存档分类
最新评论

在一个字符串中找到第一个只出现一次的字符。如输入abaccdeff,则输出b

 
阅读更多
intmain()
{
charc[]="abaccdeff";
intbit_map[26]={0};
inti=0;
for(;i<strlen(c);++i)
bit_map[c[i]-'a']++;
for(i=0;i<strlen(c);++i)
{
if(bit_map[c[i]-'a']==1)
{
printf("%c",c[i]);
break;
}
}
if(i>=strlen(c))
printf("Noeletotherule\n");
getchar();
return0;
}
-------------------------------------------------------------------------------------------------------------
// bit_Map_01.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include <iostream>
using namespace std;


int _tmain(int argc, _TCHAR* argv[])
{
	char str[]="abaccdeff";
	//int bitmap[26]={1};//这样也只是第一个为1
	int bitmap[26]={0};
	for (int i=0;i<strlen(str);i++)
	{
		bitmap[str[i]-'a']++;
	}
	int j=0;
	for (;j<strlen(str);j++)
	{
		if (bitmap[str[j]-'a'] == 1)
		{
			cout<<str[j];
			break;//由于是第一次,那么就要break
		}
	}
	if (j>=strlen(str))
	{
		cout<<"没有找到"<<endl;
	}
	
	system("pause");
	return 0;
}

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics