A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

©   /  2017-3-5 23:28  /  932 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

感觉问题不复杂,看了你的代码手机看的看不清+头疼。先定义俩个和所求数组一样长度的数组用length,先用外循环遍历数组,定义一个int s=0来控制索引,内循环把取出来的数和后面的比较如果重复给变量num自加一当循环到最后一个开始判断如果num为0就代表这数不重复,如果不为0就代表次数重复把外循环来的值付给数组a[s] s自加把num付给a[s] s自加。这样就能得到一个{重复数,个,重复数,个数……}的结果了,还有当拿后面的数和更后面的比较时怎么判断这个数是否是前面已经重复的了,这是就用第二个数组b了用来标记哪些数不必再用了,当有重复的数是就在对应位置把b[j]赋值1这步要放在内循环中,在外循环中在加一个判断当从arr取数时如果对应位置的数组b中的元素为1就不用取该数了因为是前面重复的跳过继续下一次循环即可,最后a就是你要的结果,如果非要那个字符串数组的话,用连接符和=连起来就行了。其实和你的也差不多!呵呵




来自宇宙超级黑马专属苹果客户端来自宇宙超级黑马专属苹果客户端
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马