黑马程序员技术交流社区

标题: {1,2,3,4,5,6,7,8,9,1,2,3,79,23,45,64,9,3,2,4}中的重复出现的数字的... [打印本页]

作者: 张小康    时间: 2013-11-4 20:56
标题: {1,2,3,4,5,6,7,8,9,1,2,3,79,23,45,64,9,3,2,4}中的重复出现的数字的...
本帖最后由 张小康 于 2013-11-5 17:00 编辑

请统计出数组:{1,2,3,4,5,6,7,8,9,1,2,3,79,23,45,64,9,3,2,4}中的重复出现数字的个数。
是出现重复的数字,比如里面的2是重复出现了
作者: V_John    时间: 2013-11-4 21:06
for循环里面判断,一个一个的判断,定义一个变量接收重复的次数!输出就好了!
作者: 何俞平    时间: 2013-11-4 21:08
int[] nums = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 1, 2, 3, 79, 23, 45, 64, 9, 3, 2, 4 };
            //声明一个Dictionary集合来存放数字和重复的次数
            Dictionary<int, int> dic = new Dictionary<int, int>();
            for (int i = 0; i < nums.Length; i++)
            {
                if (dic.ContainsKey(nums[i]))   //集合中已有该数字
                {
                    dic[nums[i]]++;
                }
                else                //集合中不包含该数字
                {
                    dic[nums[i]] = 1;
                }
            }

            int count = 0;  //用于记录重复出现的数字的个数
            foreach (KeyValuePair<int, int> item in dic)
            {
                if (item.Value != 1)    //即出现次数不止一次
                {
                    count++;
                }
            }
            Console.WriteLine("重复出现的数字有{0}个", count);
            Console.ReadKey();
作者: 佟嘉豪    时间: 2013-11-4 21:16
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;

  6. namespace 重复数字统计
  7. {
  8.     class Program
  9.     {
  10.         static void Main(string[] args)
  11.         {

  12.             int[] s = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 1, 2, 3, 79, 23, 45, 64, 9, 3, 2, 4 };
  13.             Dictionary<int, int> dic = new Dictionary<int, int>();//将数组元素作为key 出现次数作为value
  14.             for (int i = 0; i < s.Length; i++)
  15.             {
  16.                 if (!dic.ContainsKey(s[i]))//如果里面没有这个数字,就将其存入dic
  17.                 {
  18.                     dic.Add(s[i], 1);
  19.                 }
  20.                 else//如果里面有就将其value+1
  21.                 {
  22.                     dic[s[i]]++;
  23.                 }
  24.             }
  25.             foreach (KeyValuePair<int, int> item in dic)
  26.             {
  27.                 if (item.Value != 1)
  28.                 {
  29.                     Console.WriteLine("{0}出现了{1}次", item.Key, item.Value);
  30.                 }
  31.             }
  32.         }
  33.     }
  34. }
复制代码

作者: 夢醒了⊙﹏⊙b心    时间: 2013-11-4 21:43
用键值对 Dictionary 这个方法很简单 我只指明思路 具体实现方法我相信楼主的实力  所以代码就不贴了  要锻炼大家的思考能力
作者: 夢醒了⊙﹏⊙b心    时间: 2013-11-4 21:48
用键值对 Dictionary 这个方法很简单 我只指明思路 具体实现方法我相信楼主的实力  所以代码就不贴了  要锻炼大家的思考能力
作者: 夢醒了⊙﹏⊙b心    时间: 2013-11-4 21:52
用键值对Dictionary  这个很简单的  具体的代码就不贴了 我相信楼主的实力  帮助大家思考




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2