字符种类数统计

字符种类数统计

问题描述

计算字符串中含有的不同字符的个数
多个相同的字符只计算一次
对于字符串 abaca 而言,有 a、b、c 三种不同的字符,因此输出 3

思路

  1. 把字符串 转换为数组,并且准备一个新的空字符串
  2. 遍历数组,如果数组里的元素不存在于新字符串里,就添加此元素到字符串里
  3. 输出新字符串长度

实现

using System;

public class Program {
    public static void Main() {
    
        string str1 = Console.ReadLine();
        char[] arr = str1.ToCharArray();
        string n2 = ""; 
        for (int i = 0; i < arr.Length; i++) {
            string a = new string(arr, i, 1); 
            if ((n2.IndexOf(arr[i])) == -1) {
                n2 = n2.Insert(0, a);

            }
        }
        Console.WriteLine(n2.Length );
    }
}

用到的方法


 1. //string a = new string(Array arr, int i, int j);  
    // 把char数组 arr 从arr[i]开始转换 j 个
  //例:
          char[] m = { '1', '2' ,'3','4'};
          string n = new string(m, 1, 2);  // 从m[1]开始转换 2 个 
		  Console.WriteLine(n);  // n = "23"
  
 
 2. //String.IndexOf(a); // 字符串里a出现的位置,**如果没有则等于-1** 
    //String.Insert(int i,a);   // 在字符串的 i 位置 插入a,其他往后移 
    //例: string q= "abcdefg";
    Console.WriteLine(q.IndexOf(a));   // 输出为 0 q = q.Insert(0,"0");
    Console.WriteLine(q);  // 输出为 0abcdefg

借鉴

using System;
using System.Linq;
 
public class Program
{
    public static void Main()
    {
        var inputString = Console.ReadLine();
        var count = inputString.ToList().Distinct().Count();
        Console.WriteLine(count);
    }
}

总结

重点方法:

//string a = new string(Array arr, int i, int j);
// 把char数组 arr 从arr[i]开始转换 j 个
//例:
char[] m = { ‘1’, ‘2’ ,‘3’,‘4’};
string n = new string(m, 1, 2); // 从m[1]开始转换 2 个
Console.WriteLine(n); // n = “23”

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值