| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1097 人关注过本帖
标题:请教关于一个输出数字程序的算法
只看楼主 加入收藏
tianshilei
Rank: 2
等 级:论坛游民
帖 子:33
专家分:10
注 册:2010-10-28
收藏
 问题点数:0 回复次数:5 
请教关于一个输出数字程序的算法
要求是输入10个数字,存放在数组里面,然后要求输出互不相同的数字,也就是说,如果一个数字出现多次,那么只打印一次。
现在不知道这个程序该怎么搞,没点思路呀……请高手帮忙指点以下。
谢谢了~
2011-09-20 23:20
tianshilei
Rank: 2
等 级:论坛游民
帖 子:33
专家分:10
注 册:2010-10-28
收藏
得分:0 
咋没人理我呢……
2011-09-23 12:02
husiwen
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:2
帖 子:227
专家分:1125
注 册:2010-5-23
收藏
得分:0 
import java.util.HashMap;
import java.util.Scanner;
import java.util.Set;

public class Test {
    public static void main(String[] args) {
        HashMap<Integer,Integer> map = new HashMap<Integer, Integer>();
        
        Scanner sc = new Scanner(System.in);
        for(int i=0;i<10;i++){
            int a = sc.nextInt();
            if(map.get(a)==null){
                map.put(a, 1);
            }else {
                map.put(a, map.get(a)+1);
            }
        }
        
        Set<Integer> k = map.keySet();
        int[] bb=new int[k.size()];
        int t=0;
        for (Integer i : k) {
            bb[t++]=i;
        }
        for (int i : bb) {
            System.out.println(i);
        }
    }
}
2011-09-23 23:47
tianshilei
Rank: 2
等 级:论坛游民
帖 子:33
专家分:10
注 册:2010-10-28
收藏
得分:0 
回复 3楼 husiwen
谢谢,我研究一下~~不好意思才看到。
2011-09-25 10:12
付政委
该用户已被删除
收藏
得分:0 
提示: 作者被禁止或删除 内容自动屏蔽
2011-09-25 14:10
gwl3323405
Rank: 2
等 级:论坛游民
帖 子:22
专家分:46
注 册:2010-10-31
收藏
得分:0 
蝙蝠侠的方法比较聪明,但在大数据量时不够保险,因为HashSet是无序的,建议TreeSet,那么这样写:
程序代码:
int[] ints = new int[]{5,5,4,4,3,3,2,2,1,1};
        TreeSet<Integer> ts=new TreeSet<Integer>();
        for(int i = 0; i < ints.length; i ++){
            ts.add(ints[i]);
        }
        System.out.println(ts);
2011-10-04 11:57
快速回复:请教关于一个输出数字程序的算法
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.031005 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved