`

请您先登录,才能继续操作

随机生成50个整数数字,每个数字的范围是{10,50}, 统计每个数字出现的次数 以及出现次数最多的数字的个数。最后将每个数字和出现的次数打印出来。

 
阅读更多
package com.collections;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Random;
import java.util.Set;
import java.util.TreeMap;

/**
 * @类功能说:随机生成50个整数数字,每个数字的范围是{10,50},
 * 统计每个数字出现的次数 以及出现次数最多的数字的个数。最后将每个数字和出现的次数打印出来。
 * 如果某个数字出现0次,就不要打印它,打印时按照数字的升序排列。
 * @类修改者:
 * @修改日期:
 * @修改说明:
 * @作者:matieli
 * @创建时间:Jun 22, 2012 10:25:45 AM
 * @版本:V1.0
 * 
 */
public class MapTest {
	public static void main(String[] args) {
		Map<Integer, Integer> map = new TreeMap<Integer, Integer>();// 存储生成的随机数,以及出现的次数(key=随机数,value=次数)

		Random random = new Random();

		for (int i = 0; i < 50; i++) {
			Integer in = random.nextInt(41) + 10;

			if (map.get(in) == null) {
				map.put(in, new Integer(1));
			} else {
				int oldValue = ((Integer) map.get(in)).intValue();
				map.put(in, new Integer(oldValue + 1));
			}
		}

		Set<Map.Entry<Integer, Integer>> set = map.entrySet();

		Collection<Integer> clo = (Collection<Integer>) map.values();

		int maxValue = Collections.max(clo);

		List<Integer> list = new ArrayList<Integer>();

		for (Iterator<Map.Entry<Integer, Integer>> inte = set.iterator(); inte.hasNext();) {

			Map.Entry<Integer, Integer> entry = (Map.Entry<Integer, Integer>) inte.next();

			Integer key = (Integer) entry.getKey();

			Integer value = (Integer) entry.getValue();

			if (value.intValue() == maxValue) {
				list.add(key);
			}

			System.out.println("随机数<" + key + ">,出现了<" + value + ">次.");
		}

		System.out.println("出现的最多的次数是:" + maxValue + "次.");
		
		System.out.println("出现次数最多的数字分别是:");
		
		for (Integer i : list) {
			System.out.println(i);
		}
	}
}

分享到:
评论

相关推荐

    java随机生成50个数字并统计出现次数

    Java 随机生成 50 个数字并统计出现次数 在这个 Java 编程示例中,我们将学习如何使用 Java 语言生成 50 个随机数字,并统计每个数字出现的次数。我们将创建一个名为 RandomTest 的 Java 类,使用Java.util.Random...

    统计每个整数的出现次数

    ### 统计每个整数的出现次数 #### 知识点概述 本篇文章将详细介绍一个Java程序的设计与实现过程,该程序的主要功能是随机生成指定数量(本例中为40个)介于0到100之间的整数,并统计这些整数的出现次数。最后,...

    VB字符出现最多字符以及次数数统计[参照].pdf

    在VB编程语言中,字符出现最多以及次数统计是常见的数据处理任务。以下是对给定文件中四个编程问题的详细解析: 1. **字符出现次数最多的字母统计** 这段代码用于统计一个字符串中出现次数最多的字母。首先,定义...

    随机猜数字

    在本例中,使用 `new Random()` 创建了一个 `Random` 对象,并通过调用其 `Next(int, int)` 方法来生成介于指定范围内的随机整数。 2. **控制台输入/输出**:通过 `Console.ReadLine()` 方法获取用户输入的字符串,...

    从n个整数中查找出现频率最高的所有整数(用java实现)

    另一个则是利用哈希表(`HashMap`)来统计每个整数出现的频率,进而找出出现频率最高的整数。 ### 第一部分:排序与遍历方法 #### 代码解析: 在第一部分的代码中,首先定义了一个方法 `getdata()` 来随机生成一个...

    PHP统计数值数组中出现频率最多的10个数字的方法

    这段代码将生成一个长度为1000的数组,其中每个元素都是1到1000之间的随机整数。 接下来,我们需要统计数组中每个元素出现的次数。PHP提供了一个内置函数`array_count_values()`,它可以接收一个数组作为参数,返回...

    c++分治法求解众数问题

    我们可以使用哈希表(如`unordered_map`)来统计每个元素的出现次数,从而快速确定众数。 ```cpp #include #include using namespace std; // 计算子集众数及其出现次数 pair, int&gt; findMajority(vector&lt;int&gt;& ...

    上海电机学院C语言实训答案

    (2)编写一个程序实现如下功能:输入10个学生5门课程的成绩,分别用函数求:①每个学生的平均分;②每门课程的平均分;③找出最高的分数所对应的学生和课程。 若输入2个学生的成绩,其运行结果如下图所示。 (3...

    随机数输出统计

    本项目“随机数输出统计”旨在生成50个位于[10, 50]区间内的随机数,并对这些随机数的出现次数进行统计。这里我们将详细讲解如何实现这一目标,以及涉及到的关键知识点。 首先,我们需要引入`java.util.Random`类,...

    python 统计一个列表当中的每一个元素出现了多少次的方法

    在Python编程语言中,统计列表中每个元素出现的次数是一个常见的任务,特别是在数据处理和分析时。本篇文章将介绍三种不同的方法来实现这个功能。 ### 方法一:使用`count()`函数 这是最基础的方法,通过遍历列表...

    java猜数字游戏

    Java 猜数字游戏是一种常见的编程练习,它通过创建一个简单的用户交互界面,让玩家猜测计算机随机生成的一个介于1到100之间的整数。下面我们将深入探讨这个游戏的实现细节。 1. **基本框架**: 游戏的主体是一个`...

    猜100以内随机数游戏-带Delphi源码

    在描述中提到,游戏的最大猜数次数为7次,这是因为二进制的7次方即128,可以覆盖0到127的整数范围,而100在这个范围内,所以最多需要7步就能确定答案。每一轮猜测,玩家都会被提示数字是偏大还是偏小,从而逐渐缩小...

    二叉树的生成及其遍历序列

    在本项目中,我们生成的二叉树是通过50个不重复且小于100的随机整数构建的。这个过程首先通过`RandDif`函数实现,它利用系统随机函数生成随机数,并通过取模操作确保数值范围在0到99之间。为了保证生成的整数不重复...

    随机生成牌和洗牌问题

    算法的核心思想是从数组尾部开始,每次随机选择一个元素与当前位置的元素交换,从而保证每个元素被选中的概率相同。 **具体步骤:** - 初始化一个包含所有牌的数组(例如:`data[]`),长度为54(代表一副扑克牌...

    c#实现数独

    它是一种逻辑推理游戏,玩家需要在9×9的宫格(分为9个小的3×3宫格)中填入数字,使得每一行、每一列以及每一个小宫格内的数字1到9都只出现一次。数独的解决方案唯一,不涉及任何数学计算,只需要逻辑思维能力。 ...

    SQL数据库对于海量数据面试题及答案.pdf

    对每个小文件,统计每个文件中出现的词以及相应的频率(可以采用trie 树/hash_map 等),并取出出现频率最大的100个词(可以用含100 个结点的最小堆) ,并把 100 词及相应的频率存入文件,这样又得到了5000 个文件...

    猜数字源代码

    - 在每个回合中,根据玩家输入的数字与目标数字的匹配程度给出反馈。 - 当玩家成功猜出所有四个数字的位置时,输出祝贺信息并结束游戏。 ### 四、总结 该猜数字游戏的实现涵盖了C++编程中的多个基础知识点,包括但...

    C#开发猜数字游戏-简单

    这个游戏的核心是计算机随机生成一个数字,然后让玩家尝试猜测这个数字。它不仅适合初学者学习C#的基础知识,如变量、条件语句和循环,还能够帮助提升逻辑思维能力。 首先,我们需要了解C#的基本语法和结构。C#是一...

    C++ 实现随机输入10个数,对其进行分类

    本示例中,我们需要实现一个程序,它能够随机生成十个整数,并根据它们的值将这些数分为三类:小于0的数、0到100之间的数以及大于100的数。下面我们将详细探讨如何实现这个功能,同时考虑优化空间复杂度。 首先,...

    猜数游戏-----洗牌算法的典型应用

    洗牌算法的核心目标是确保每个元素在经过一次洗牌后都有可能出现在序列的任何位置,使得序列达到近似均匀的随机状态。在概率论中,这种状态被称为“均匀分布”。常见的洗牌算法有Fisher-Yates(也称为Knuth)洗牌...

Global site tag (gtag.js) - Google Analytics