• 编程基础之字符串——02找第一个只出现一次的字符


    描述

    给定一个只包含小写字母的字符串,请你找到第一个仅出现一次的字符。如果没有,输出no。

    输入一个字符串,长度小于100000。输出输出第一个仅出现一次的字符,若没有则输出no。样例输入

    abcabd

    样例输出

    c
    自己做不出,但得到了两个别人的答案;
     1 #include<iostream>
     2 #include<cstdio>
     3 #include<cstring>
     4 using namespace std;
     5 char a[100100];
     6 int main(){
     7     int i,j,k=0,l=0;
     8     gets(a);
     9     l=strlen(a);
    10     for(i=0;i<l;i++)
    11     {
    12         for(j=0;j<l;j++)
    13         if(a[i]==a[j]&&i!=j) 
    14         k=1;
    15         if(k==0) {cout<<a[i]; return 0;
    16         }
    17         k=0;
    18     }
    19     cout<<"no"; 
    20 }

    上面这个更看得懂!

     1 #include<iostream>
     2 #include<cstdio>
     3 #include<cstring>
     4 using namespace std;
     5 int main()
     6 {
     7 char s[110000],b;
     8 int a[27]={0},k,q=0;
     9 gets(s);
    10 int w=strlen(s);
    11 for(int i=0;i<=w-1;++i)
    12 {k=s[i]-96;
    13 a[k]+=1;}
    14 for(int i=0;i<=w-1;++i)
    15 {k=s[i]-96; 
    16 if(a[k]==1) 
    17 {b=96+k;q=1;cout<<b;break;}}
    18 if(q==0) cout<<"no";
    19 return 0;
    20 }

    这个就看不懂了!最后是我自己的,到现在也没知道是哪错了!

     1 #include<stdio.h> 
     2 #include<string.h> 
     3 int t,i,j,flag,len; 
     4 char a[200000]; 
     5 int main() 
     6 { 
     7 
     8         gets(a); 
     9         len=strlen(a); 
    10         for(i=0;i<len-1;i++) 
    11         { 
    12             flag=1; 
    13             if(a[i]=='@') continue; //对于相同的,省略; 
    14             for(j=i+1;j<len;j++) //j=j+1;可以不用循环i之前的字母。 
    15                 if(a[i]==a[j]) 
    16                 { 
    17                     a[j]='@'; //相同字母做标记。 
    18                     flag=0; //不输出a[i]; 
    19                 } 
    20             if(flag==1) 
    21             { 
    22                 putchar(a[i]); 
    23                 break; 
    24             } 
    25         } 
    26     if(i==len-1)printf("no"); 
    27     return 0; 
    28 }
  • 相关阅读:
    JavaScript中的编码函数
    Redis 客户端命令总结
    Java 实现网络图片的读取与下载
    JavaScript实现单张图片上传功能
    HTML+CSS实现页面豆腐块布局和图片居中
    Java 获取当前项目所在服务器的 IP 地址
    JavaScripts中关于数字的精确计算方法
    遍历HashMap的四种方法
    java中URL 的编码和解码函数
    equals ==
  • 原文地址:https://www.cnblogs.com/hcyd/p/5492990.html
Copyright © 2020-2023  润新知