【算法题】数组重复元素

来源:互联网 发布:as3 数组删除指定元素 编辑:程序博客网 时间:2024/06/06 15:46

判断数组是否存在重复元素,已知数组有n个元素,元素范围为1~n 。

  1. 暴力循环
  2. 排序后遍历
  3. 哈希表或者数组
  4. 交换归位,直到出现冲突

方法4代码如下:

bool IsReapeat(int * a,int len){    register int j(0);    for(int i = 0; i < len; ++i)    {        j = a[i];        if (j-1 == i)        {            continue;        }        if (a[i] == a[j-1])        {            return 1;        }        swap(a[i],a[j-1]);        --i;    }    return -1;}
原创粉丝点击