判断一个数组中的数值是否连续相邻
2015-03-13 21:32
567 查看
一个整数数列,元素在 0--65535 中任意取值,相同的数字不会重复出现,0是例外,可以反复出现。
#include<iostream>
using namespace std;
//判断一个正数数组中数值是否连续(不存在数值相等的情况)
bool IsContinue(int *a,int n)
{
int max=-1,min=-1;
int count=0; //用来统计数字 0 的个数
for(int i=0;i<n;i++)
{
if(a[i]!=0)
{
if(max<a[i]||max==-1)
max=a[i];
if(min>a[i]||min==-1)
min=a[i];
}
else
count++;
}
int result=max-min;
if(result+1==n-count)
return true;
else
return false;
}
int main()
{
int a[]={1,2,3,4,5,6,7,0,8,9};
int length_a=sizeof(a)/sizeof(a[0]);
if(IsContinue(a,length_a))
cout<<"该数组为连续相邻的数组!!"<<endl;
else
cout<<"该数组为非连续相邻的数组!!"<<endl;
system("pause");
return 0;
}
输出结果:
#include<iostream>
using namespace std;
//判断一个正数数组中数值是否连续(不存在数值相等的情况)
bool IsContinue(int *a,int n)
{
int max=-1,min=-1;
int count=0; //用来统计数字 0 的个数
for(int i=0;i<n;i++)
{
if(a[i]!=0)
{
if(max<a[i]||max==-1)
max=a[i];
if(min>a[i]||min==-1)
min=a[i];
}
else
count++;
}
int result=max-min;
if(result+1==n-count)
return true;
else
return false;
}
int main()
{
int a[]={1,2,3,4,5,6,7,0,8,9};
int length_a=sizeof(a)/sizeof(a[0]);
if(IsContinue(a,length_a))
cout<<"该数组为连续相邻的数组!!"<<endl;
else
cout<<"该数组为非连续相邻的数组!!"<<endl;
system("pause");
return 0;
}
输出结果:
相关文章推荐
- 如何判断一个数组中的数值是否连续相邻
- java 判断一个数组中的数值是否连续相邻的方法
- java 判断一个数组中的数值是否连续相邻
- 数组之判断一个数组中的数值是否连续相邻
- 如何判断一个数组中的数值是否连续相邻
- 12、一个整数数列,元素取值可能是0~65535中的任意一个数,相同数值不会重复出现。0是例外,可以反复出现。 请设计一个算法,当你从该数列中随意选取5个数值,判断这5个数值是否连续相邻。
- 设计一个算法,当你从该数列中随意选取5个数值,判断这5个数值是否连续相邻。
- 程序员面试题目总结--数组(二)【二分查找、找出给定数字出现次数、两个有序整型数组交集、找出数组中唯一的重复元素、判断数组中的数值是否连续相邻】
- 当你从该数列中随意选取5个数值,判断这5个数值是否连续相邻
- 判断这5个数值是否连续相邻
- js如何判断一组数字是否连续,得到一个临时数组[[3,4],[13,14,15],[17],[20],[22]];
- 判断这5个数值是否连续相邻
- 判断数组中的数值是否连续
- 判断这5个数值是否连续相邻
- 用java判断一个int数组是否连续
- 每日一道算法题:判断5个数值是否连续相邻
- 判断数组中的数字是否连续相邻
- 判断这5个数值是否连续相邻
- 判断一个数组中的数字是否连续
- T.array.contains判断一个数组中是否包含给定元素