面试-判断数组序列是否具有单调性

数组序列从大到小或者从小到大

单调递增或者单调递减

bool类型的两个函数,如果单调递增返回值为真,单调递减返回值也为真,两者都不满足返回值为假。

//判断是否单调递增
bool Inc_Nums(int* nums, int n)
{
    assert(nums!=NULL);
	bool res = true;
	for (int i = 0; i < n-1; i++)
	{
		if (nums[i] > nums[i + 1])
		{
			res = false;
			break;
		}
	}
	return res;
}
//判断是否单调递减
bool Dec_Nums(int* nums, int n)
{
    assert(nums!=NULL);
	bool res = true;
	for (int i = 0; i < n-1; i++)
	{
		if (nums[i] < nums[i + 1])
		{
			res = false;
			break;
		}
	}
	return res;
}
//判断是否为单调函数
bool IsMonotoni(int* nums, int n)
{
	assert(nums != NULL);
	return Inc_Nums(nums,n) || Dec_Nums(nums,n);
}

你可能感兴趣的:(面试)