用递归算法判断数组a[N]是否为一个递增数组
来源:互联网 发布:贵阳大数据学校招生 编辑:程序博客网 时间:2024/05/17 22:35
用递归算法判断数组a[N]是否为一个递增数组。
#include <stdio.h>
void QSort(int* data, int low, int high)
{
int newLow = low, newHeigh = high;
int temp = data[low];
while(newLow < newHeigh)
{
while( (newLow<newHeigh) && (temp<=data[newHeigh]) )
newHeigh--;
if(newLow < newHeigh)
{
data[newLow] = data[newHeigh];
newLow++;
}
while( (newLow<newHeigh) && (data[newLow]<temp) )
newLow++;
if(newLow < newHeigh)
{
data[newHeigh] = data[newLow];
newHeigh--;
}
}
data[newLow] = temp;
if(low < (newLow-1))
QSort(data, low, newLow-1);
if((newLow+1) < high)
QSort(data, newLow+1, high);
}
bool IsIncrem(int a[], const int len)
{
if(len == 1)
return true;
if(a[len-1] >= a[len-2])
return IsIncrem(a, len-1);
return false;
}
void main()
{
int i;
int array[] = {3, -2, 1, 8, 5, 100, 30, 70, 110, 90};
int len = sizeof(array)/sizeof(int);
printf("排序前:");
for(i=0; i<len; i++)
printf(" %d", array[i]);
printf("\n");
bool flag = IsIncrem(array, len);
printf("是否递增:%d\n", flag);
printf("排序后:");
QSort(array, 0, len-1);
for(i=0; i<len; i++)
printf(" %d", array[i]);
printf("\n");
flag = IsIncrem(array, len);
printf("是否递增:%d\n", flag);
}
#include <stdio.h>
void QSort(int* data, int low, int high)
{
int newLow = low, newHeigh = high;
int temp = data[low];
while(newLow < newHeigh)
{
while( (newLow<newHeigh) && (temp<=data[newHeigh]) )
newHeigh--;
if(newLow < newHeigh)
{
data[newLow] = data[newHeigh];
newLow++;
}
while( (newLow<newHeigh) && (data[newLow]<temp) )
newLow++;
if(newLow < newHeigh)
{
data[newHeigh] = data[newLow];
newHeigh--;
}
}
data[newLow] = temp;
if(low < (newLow-1))
QSort(data, low, newLow-1);
if((newLow+1) < high)
QSort(data, newLow+1, high);
}
bool IsIncrem(int a[], const int len)
{
if(len == 1)
return true;
if(a[len-1] >= a[len-2])
return IsIncrem(a, len-1);
return false;
}
void main()
{
int i;
int array[] = {3, -2, 1, 8, 5, 100, 30, 70, 110, 90};
int len = sizeof(array)/sizeof(int);
printf("排序前:");
for(i=0; i<len; i++)
printf(" %d", array[i]);
printf("\n");
bool flag = IsIncrem(array, len);
printf("是否递增:%d\n", flag);
printf("排序后:");
QSort(array, 0, len-1);
for(i=0; i<len; i++)
printf(" %d", array[i]);
printf("\n");
flag = IsIncrem(array, len);
printf("是否递增:%d\n", flag);
}
- 用递归算法判断数组a[N]是否为一个递增数组
- 用递归算法判断数组a[N]是否为一个递增数组
- 用递归算法判断数组a[N]是否为一个递增数组
- 用递归算法判断数组a[N]是否为一个递增数组
- 用递归算法判断数组a[N]是否为一个递增数组
- C/C++ | 20-6递归算法判断数组a[N]是否为一个递增数组
- 递归算法判断数组是否为一个递增数组
- 用递归算法判断数组a[N]是否为一个递增数组。 递归的方法,记录当前最大的,并且判断当前的是否比这个还大,大则继续,否则返回false
- C语言——用递归算法判断数组是否为一个递增数组
- 用递归算法判断一个数组是否递增
- 用递归算法判断一个数组是否递增
- 用递归判断数组是否为递增数组
- 用递归判断一个数组是否是递增数组
- 如何用递归算法判断一个数组是否递增
- 如何用递归算法判断一个数组是否是递增
- 用递归的方法判断一个数组是否为递增数组
- 递归法判断一个数组为递增
- 用递归判断一个数组是否递增 JAVA代码
- qt4环境变量
- qt4程序执行流程
- ubuntu mysql c api的使用开发实例程序。
- 20个公司绝对不会告诉你的秘密
- 献10款chart图表JS插件
- 用递归算法判断数组a[N]是否为一个递增数组
- qt4 messagebox
- VC++里Profile的使用方法
- 用route命令添加永久路由
- 怎样修改和或许editbox里的文本
- Java Annotation 常用的注解
- Linux设备模型组件---总线
- 让 Chrome 浏览器随时推送正在浏览的相关信息
- Oracle学习笔记(一)--------win7下安装Oracle 10g