牛客网---2016---华为字符集合

来源:互联网 发布:回归分析 数据标准化 编辑:程序博客网 时间:2024/06/03 16:21

兔子感冒了,难受,想哭。。。

这里写图片描述

题目:
输入一个字符串,求出该字符串包含的字符集合
输入:
每组数据输入一个字符串,字符串最大长度为100,且只包含字母,不可能为空串,区分大小写。

abcqweracb

输出:
每组数据一行,按字符串原有的字符顺序,输出字符集合,即重复出现并靠后的字母不输出。

abcqwer

解析:
1 . 讲道理,就是按照原来的顺序输出结果,重复的不进行输出,第一个反映就是Hash。http://blog.csdn.net/weixin_39427526/article/details/75498245,这里有整理的Hash。。。
2 . HashSet可以保证不重复,但不能保证顺序.我们可以利用set中的add方法是否成功来判断是否重复。
3 . char转String不能toString(),因为char是基本类型不能用方法 s.charAt(i)+”“
解题所需函数:
1 . StringBuilder的append函数,HashSet的add函数

// HashSet的多种声明方式不同,方法调用也会有所不同Set<String> set = new HashSet<String>();HashSet<Character> set = new HashSet<Character>();

代码:

import java.util.*;public class Main {    public static void main(String[] args){        Scanner scan = new Scanner(System.in);        while(scan.hasNext()){            // 获取字符串信息            String string1=scan.nextLine();            // 创建结果字符串            StringBuilder string2=new StringBuilder();            // 创建HashSet String            Set<String> set = new HashSet<String>();            // 遍历s.length(),查看string1内数据,并添加到string2中            for(int i=0;i<string1.length();i++){                if(set.add(string1.charAt(i)+"")){//如set添加成功说明不重复                    string2.append(string1.charAt(i)+"");                }            }            // 最后转化成字符串,显示出来            System.out.println(string2.toString());        }        scan.close();    }       }
import java.util.*;public class Main {    public static void main(String[] args){        Scanner scan = new Scanner(System.in);        while(scan.hasNext()){            // 获取字符串信息            String string1=scan.nextLine();            // 转化成字符串数组            char[] charArray = string1.toCharArray();            // 创建结果字符串            StringBuilder string2=new StringBuilder();            // 创建HashSet Character            HashSet<Character> set = new HashSet<Character>();            // 遍历s.length(),查看string1内数据,并添加到string2中            for(int i=0;i<charArray.length;i++){                if(set.add(charArray[i])){//如set添加成功说明不重复                    string2.append(string1.charAt(i)+"");                }            }            // 最后转化成字符串,显示出来            System.out.println(string2.toString());        }        scan.close();    }       }
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 华为悦盒遥控器丢了怎么办 6s不能用电信卡怎么办 iphone6电信卡无服务怎么办 魅族手机电信卡怎么办 小米手机读不出sim卡怎么办 魅蓝note6耗电快怎么办 oppo手机下载密码忘了怎么办 华为v9玩飞车卡怎么办 苹果7耳机转换器不支持怎么办 华为mate10耳机声音小怎么办 200打一年到期了怎么办 手机欠费变成2g怎么办 手机4g网用不了怎么办 手机玩王者荣耀卡怎么办 华为隐私空间密码忘记了怎么办 华为手机王者太卡怎么办 华为手机太卡怎么办呢 华为手机5x太卡!怎么办 华为手机玩游戏时太卡了怎么办? 买到华为翻新机怎么办 华为畅享8声音小怎么办 华为5a安全模式怎么办 手机跳屏怎么办金立 苹果手机触控不灵敏怎么办 华为mate8手机声音小怎么办 华为mate9相机无法对焦怎么办 新疆外地电信卡信号差怎么办 华为手机搜索不到wifi怎么办 华为浏览器恢复只有一个页面怎么办 华为手机触摸屏没反应怎么办 快递不给送上楼怎么办 华为荣耀手机声音小怎么办 华为手机来电铃声小怎么办 s弯出来时老压线怎么办 苹果7p手机弯了怎么办 小米手机摔弯了怎么办 华为畅享5没声音怎么办 掌阅语音闪退怎么办 华为mate开屏成排线怎么办 华为mate8电池坏了怎么办 8plus拍照不清晰怎么办