递归与非递归判断数组是否递增

来源:互联网 发布:java并发编程 豆瓣 编辑:程序博客网 时间:2024/05/16 06:05


#include "stdafx.h"
#include <iostream.h>
void isIncrease(int *a,int n)//非递归判断数组是否递增;
{
int j=0;//计数器;
for (int i=1;i<=n;i++)
{
if (a[i-1]>a[i])//循环判断数组中相邻的数的大小,如果前面的数大于后面的数则j增加;
{
j++;
}
}
if (j>0)
{
cout<<"这个数组不是递增数组!"<<endl;
}
else
cout<<"这个数组是递增的数组!"<<endl;
}
bool isIncreaseDigui(int *a,int n)//递归调用
{
   
   if (n==1)
   {
        return true;
   }
   else
  return (a[n-1]>a[n-2]&&isIncreaseDigui(a,n-1));


}
void main()
{
int a[]={-1,0,2,1,5,4,7,8};
int length=sizeof(a)/sizeof(int);
isIncrease(a,length);
if (isIncreaseDigui(a,length))
{
cout<<"这个数组是递增的数组!"<<endl;
}
else
cout<<"这个数组不是递增数组!"<<endl;
}