数组练习
1、判断一个数组{1,2,3,1,0}中是否存在相同的元素,如果存在相同的元素则输出“重复”,否则输出“不重复”。
2、判断数组{1,2,0,2,1}中的元素是否对称。例如也就是说数组中的第一个元素和最后一个元素相同,数组中的第二个元素和倒数第二个元素相同,依次类推。
3、统计一个整数中出现最多的数字。如果数字个数一样,则以最大的数字为准,例如1输出1,121输出1,23231输出3。谁能帮忙谢谢这些小程序

解决方案 »

  1.   

    第一个,循环遍历数组是很笨的.
    把数组放进Set里,比较Set的长度与数组的长度是否相同.
    Set是可以过滤重重数据的.程序员不要总是想着循环遍历..................
      

  2.   


    HashSet<Integer> set = new HashSet<Integer>();
    int a[] = { 1, 2, 4, 4, 5, 6, 8, 2 };
    for (int i = 0; i < a.length; i++) {
    if (set.contains(new Integer(a[i]))) {
    System.out.println(a[i]);
    } else
    set.add(new Integer(a[i]));
    }
      

  3.   

    绝对要循环的 用java人家都做好循环,只是你看不见
      

  4.   

    绝对要循环的 用java人家都做好循环,只是你看不见
      

  5.   

    你这个问题我也写过,不知道仍去哪了。不过具体的就不写出来,说一下思路把。
    第一题:第一种方法:其实可以用类似于冒泡排序,要用到双层循环对比;
             第二种方法:先把数组的的值放入arraylize中,然后使用sort先排序,再for循环前后两个值对比
    第二题:你可以上网查一下回文,实现的思路就是循环对比顺数第n个与倒数第n个是否相等(可以根据length获取长度,例如最后一个就是length-1 与第0个对比)