C#面试题:字符串中字符出现的次数

寻找字符串中出现次数最少,位置靠前的字符。

需要引用:using System.Collections.Generic;

  1. void FindChar(string str){
  2.     //使用字典Dictionary<key,value>来存储字符,出现次数。
  3.     Dictionary<Char,int> dic=new Dictionary<Char,int>();
  4.     for(int i=0;i<=str.Length-1;i++){
  5.         if(dic.ContainsKey(str[i])){//判断字典中是否存在key值,存在的话value出现次数就加1,不存在,就添加到字典中去。
  6.             dic[str[i]]++;
  7.         }else{
  8.             dic.Add(str[i],1);
  9.         }
  10.     }    
  11.     for(int i=0;i<dic.Count;i++){//寻找字典中出现次数最少的字符。
  12.         int min=dic[str[i]];            //min是出现最少的次数。
  13.         if(min>dic[str[i+1]]){
  14.             min=dic[str[i+1]];
  15.         Console.WriteLine(str[i+1]+":"+min);
  16.         }
  17.     }    
  18. }

大家有更好的方法,麻烦告诉下我,我们大家一起进步。 

猜你喜欢

转载自blog.csdn.net/QQhelphelp/article/details/82469011