一个字符串中查找第一个只出现一次的字符 ,时间复杂度为O(N)

论坛 期权论坛 编程之家     
选择匿名的用户   2021-6-2 20:59   3082   0

一个字符串中查找第一个只出现一次的字符 ,时间复杂度为O(N)

#include <stdio.h>
#include <stdlib.h>
char first_single(const char *str)
{
 int asc[255] = {0};
 int i;
 
 for(i = 0; str[i]!='\0';i++)
 {
  asc[str[i]]++;
 }
 for(i = 0; str[i]!='\0'; i++)
 {
  if(asc[str[i]]==1)
  {
   return str[i];
  }
 }
 return '\0';
}
int main()
{
 char str[] = "abcdefgag";
 printf("%c\n",first_single(str));
 return 0;
}


分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP