题解 | #判断各类型字符个数#

判断各类型字符个数

http://www.nowcoder.com/practice/4ccc155e474e4d4c83cfde116dcf2218

题目的主要信息:

  • 对于输入的字符串,分别统计出其中英文字母、空格、数字和其它字符的个数

具体做法:

我们遍历字符串,对于每个字符依次判断是否属于一下情况即可:

对于字母,我们查看是否在a-z或者A-Z之间,ASCⅡ码比较;

对于数字,我们查看是否在0-9之间,也是ASCⅡ码比较;

对于空格直接查看是否等于' ';

以上三种都不是则为其他字符。

alt

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        int numbers = 0;
        int words = 0;
        int space = 0;
        int other = 0;
        Scanner scanner = new Scanner(System.in);
        String str = scanner.nextLine(); //输入
        for(int i = 0; i < str.length(); i++){ //遍历字符串
            char c = str.charAt(i); //对于每个字符
            if((c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z')) //字母
                words++;
            else if(c >= '0' && c <= '9') //数字
                numbers++;
            else if(c == ' ') //空格
                space++; 
            else //其他
                other++;
        }
        System.out.println("英文字母"+words+"数字"+numbers+"空格"+space+"其他"+other);
    }
}

复杂度分析:

  • 时间复杂度:O(n)O(n),其中nn为字符串长度,需要遍历这个字符串
  • 空间复杂度:O(1)O(1),无额外空间
孤帆远影碧空尽 文章被收录于专栏

牛客网各类题单题解~

全部评论

相关推荐

12-05 18:09
已编辑
广东药科大学 后端工程师
点赞 评论 收藏
分享
12-03 03:32
安徽大学 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务