题解 | #提取不重复的整数#

提取不重复的整数

https://www.nowcoder.com/practice/253986e66d114d378ae8de2e6c4577c1

import java.util.Scanner;

import java.util.HashSet;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        HashSet<Character> hset = new HashSet<>();
        StringBuilder strb = new StringBuilder();
        Scanner in = new Scanner(System.in);
        // 数组转字符串数组
        char[] inputNum = String.valueOf(in.nextInt()).toCharArray();
        // 倒叙循环
        for(int i = inputNum.length - 1 ; i >= 0; i--) {
            // 判断 set 中是否存在此值
            if(hset.contains(inputNum[i])){
                // 存在
                continue;
            } else {
                // 不存在
                hset.add(inputNum[i]);
                strb.append(inputNum[i]);
            }
        }
        System.out.println(Integer.valueOf(strb.toString()));
    }
}

这个思路其实很简单,就是将输入的字符串转为char数组,然后逐一倒着循环,用一个不重复的HashSet表来判断是否重复,不重复就放在StringBuilder中,最后转为Integer即可。

好久没做题了,这是脑子里的第一反应...

全部评论

相关推荐

点赞 评论 收藏
分享
10-09 22:05
666 C++
找到工作就狠狠玩CSGO:报联合国演讲,报电子烟设计与制造
点赞 评论 收藏
分享
10-07 20:48
门头沟学院 Java
听说改名就会有offer:可能是实习上着班想到后面还要回学校给导师做牛马,看着身边都是21-25的年纪,突然emo了了
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务