Java 实现计算数组中不相同数字出现的次数

2021-09-27 00:00:00 数组 次数 中不

题:统计给定一组数组中,不同数字所在数组中出现的次数,并找到最大值和最小值
代码:

import java.util.Arrays;
import java.util.Map;
import java.util.Scanner;
/* *使用计数排序来实现 *1 获取最大值和最小值 *2定义计数数组和找偏移量 确定计数数组长度 */
public class Work1 { 
	public static void main(String[] args) { 
		
		int arr[] = { 2,5,2,5,6,7,6,7,8,8,100};
	
		//获取最大值和最小
		int min = arr[0];
		int max = arr[0];
		for(int i = 0; i < arr.length; i ++) { 
			if(min > arr[i]) {  min = arr[i];}
			if(max < arr[i]) {  max = arr[i];}
		}
		System.out.println(“最大值是:” + max);
		System.out.println("最小值是:" + min);
		
		// 定义存放数字个数的数组
		int[] counts = new int[max -min + 1];
		int offset = min - 0;// 
		//统计每个数次出现的次数
		for(int i = 0;i < arr.length; i ++) { 
			counts[arr[i] - offset] ++;//实现原数组中数字存入计数数组的位置
		}                //数字所对应计算数组的脚标= 原数字 - 偏移量
		
		//遍历计数数组,将每个元素打印出来 偏移量 = offset
		//计算数组中所对应的数是: 偏移量 + 脚标
		for(int i = 0; i < counts.length;i ++) {   //遍历计数数组
			if( counts[i] != 0) {   
				System.out.println( (offset + i)+ "出现的次数是:" + counts[i]); 
			}
		}
		
	}
}
    原文作者:Hard to say im sorry ?
    原文地址: https://blog.csdn.net/weixin_46034896/article/details/106843414
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。

相关文章