判断数组或者集合中重复元素的个数。

当我们需要对数组或者集合中的元素进行重复元素个数时,我们不妨使用map来完成此操作。

由于map中key是唯一的,所以利用这一特性就可以对数组中重复元素进行统计。

java实现代码如下。

String[] names={"a","b","a","b","c"};

Map<String,Integer> sameElement=new HashMap<String,Integer>();
        for(int i=0,k=names.length;i<k;i++){
                  Integer sum=sameElement.get(names[i]);
                 sameElement.put(names[i], sum==null?1:sum+1);
        }
        for (Map.Entry<String, Integer> entry : sameElement.entrySet()) {
             System.out.println(entry.getKey()+"个数是:"+entry.getValue());
        }

以上是通过查阅api以及阅读前辈大作,整理所得。如有不足之处,请多多指教。

共勉,努力学习,一起进步,谢谢!

原文地址:https://www.cnblogs.com/wangyanei2017/p/8806671.html

时间: 2024-11-05 22:06:51

判断数组或者集合中重复元素的个数。的相关文章

python列表--查找集合中重复元素的个数

方法一: >>> mylist = [1,2,2,2,2,3,3,3,4,4,4,4] >>> myset = set(mylist) >>> for item in myset: print("the %d has found %d" %(item,mylist.count(item))) the 1 has found 1 the 2 has found 4 the 3 has found 3 the 4 has found 4

LeetCode:Contains Duplicate II - 判断数组内是否有重复元素2

1.题目名称 Contains Duplicate II(判断数组内是否有重复元素2) 2.题目地址 https://leetcode.com/problems/contains-duplicate-ii/ 3.题目内容 英文:Given an array of integers and an integer k, find out whether there are two distinct indices i and j in the array such that nums[i] = nu

LeetCode:Contains Duplicate - 判断数组内是否有重复元素

1.题目名称 Contains Duplicate(判断数组内是否有重复元素) 2.题目地址 https://leetcode.com/problems/contains-duplicate/ 3.题目内容 英文:Given an array of integers, find if the array contains any duplicates. Your function should return true if any value appears at least twice in

计算数组中重复元素的个数

方法一: <script> var array = ['1','2','5','1','4','4','2','3','5','1','1','5','','', '']; var arr = new Array(); var test = new Array(); var num = 1; var temp = ""; var size = array.length; console.log("-----------------------------"

统计数组中重复元素个数

/** * 循环统计数组或集合中的重复元素个数 * @param args */ public static void main(String[] args) { Map<String, Integer> map = new HashMap<String, Integer>(); String[] ss = {"白","黑","绿","白"}; for (int i = 0; i < ss.len

将老集合中重复的元素删除并添加到新集合中

package com.day15.collection; import java.util.ArrayList;import java.util.Iterator; /* * 去除集合中字符串的重复值(字符串的内容相同) * 思路:创建新集合,将重复元素去掉 * 1.创建新集合 * 2.根据传入的集合(老集合)获取迭代器 * 3.遍历老集合 * 4.通过新集合判断是否包含老集合中的元素,如果包含就不添加,如果不包含就添加 */ public class ArrayTwo { public st

去除ArrayList集合中重复字符串元素方式_思路:创建新集合方式

import java.util.ArrayList; import java.util.Iterator; public class jh_01_去除ArrayList集合中重复字符串元素方式 { /* * /** * * A:案例演示 * 需求:ArrayList去除集合中字符串的重复值(字符串的内容相同) * 思路:创建新集合方式 */ public static void main(String[] args) { ArrayList list = new ArrayList(); li

C#不允许在foreach循环中改变数组或集合中元素的值(注:成员的值不受影响)

C#不允许在foreach循环中改变数组或集合中元素的值(注:成员的值不受影响),如以下代码将无法通过编译. foreach (int x in myArray) { x++; //错误代码,因为改变了元素的值 Console.WriteLine(x); } 如果要让自定义的数据类型支持foreach循环,则该类型必须实现IEnumerable<T>接口,且存在对应此列表的IEnumerator<T>实现. 实际上,在.Net的底层(IL语言层面)而言, foreach (var

List集合去除重复元素,不打乱顺序(数组转List)

//数组转List List<String> objStr_0_List = Arrays.asList(objArr[0].split("#,#")); //List集合去除重复元素,不打乱顺序 private List<String> getNon_repeatList(List<String> Str_List) { List<String> resultList = new ArrayList<String>(); S