首页 > 其他 > 详细

查找重复的字符串

时间:2014-09-04 11:54:39      阅读:347      评论:0      收藏:0      [点我收藏+]

给定一个长度为n的数组,其元素也在【0 n-1】范围内,判断其中是否包含重复元素。

#include <stdio.h>  

#include <stdlib.h> 
#include<iostream>
#include<string>
using namespace std;
bool find_repeat(int *s,int len)
{
int max(s[0]),min(s[0]);
if(len==0)
return false;


    for(int i=1;i<len;i++)
  {
    if(s[i]>max)
{
   max=s[i];
}
else if(s[i]<min)
{
   min=s[i];
}
  }
int temp=max-min;
if(temp==0)
{
 return true;
}
for(int i=0;i<len;i++)
{
  s[i]=s[i]-min;
}
//int i=0;
for(int i=0;i<len;i++)
{
  while(s[i]!=i)
  {
    if(s[s[i]]==s[i])
return true;
else
{
   int temp=s[i];
s[i]=s[temp];
s[temp]=temp;
}
  }


}
return false;
}


int main()
{
int a[]={3,5,2,-1,1,0,4};
if(find_repeat(a,7))
cout<<"repeat true"<<endl;
else 
cout<<"no repeat"<<endl;
for(int i=0;i<7;i++)
cout<<a[i]<<" ";
cout<<endl;
return 0;
}

查找重复的字符串

原文:http://blog.csdn.net/zhuzhiqi11/article/details/39049067

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!