算法引论之多项式求解(递归和非递归实现)
来源:互联网 发布:济南专业淘宝拍摄 编辑:程序博客网 时间:2024/05/18 02:36
/*
多项式求解:
输入:系数,阶数(决定项数),x值
输出:多项式的值
递归本质:可以细分为小问题(递),然后小问题累积得出结果(归)-设计程序时,为找到出口点,并返回;
实现1:非递归;
实现2:递归;
*/
#include <stdio.h>
#include <stdlib.h>
#include<iostream>
using namespace std;
int polynomialNorm1(int i,int a[],int x)
{
int sum=a[0]*x+a[1];
for(int j=2;j<i+1;j++)
{
sum=sum*x+a[j];
}
return sum;
}
int polynomialNorm2(int i,int n,int a[],int x)
{
if(n>0)
return a[n]+polynomialNorm2(i,n-1,a,x)*x;
else
return a[n];
}
int main()
{
//非递归
int i,a[10],x;
cout<<"x的值"<<endl;
cin>>x;
cout<<"x的阶数"<<endl;
cin>>i;
cout<<"多项式中的系数"<<endl;
for(int j=0;j<=i;j++)
cin>>a[j];
int sum=polynomialNorm1(i,a,x);
cout<<sum;
system("pause");
//递归
sum=polynomialNorm2(i,i,a,x);
cout<<sum;
return 0;
}
多项式求解:
输入:系数,阶数(决定项数),x值
输出:多项式的值
递归本质:可以细分为小问题(递),然后小问题累积得出结果(归)-设计程序时,为找到出口点,并返回;
实现1:非递归;
实现2:递归;
*/
#include <stdio.h>
#include <stdlib.h>
#include<iostream>
using namespace std;
int polynomialNorm1(int i,int a[],int x)
{
int sum=a[0]*x+a[1];
for(int j=2;j<i+1;j++)
{
sum=sum*x+a[j];
}
return sum;
}
int polynomialNorm2(int i,int n,int a[],int x)
{
if(n>0)
return a[n]+polynomialNorm2(i,n-1,a,x)*x;
else
return a[n];
}
int main()
{
//非递归
int i,a[10],x;
cout<<"x的值"<<endl;
cin>>x;
cout<<"x的阶数"<<endl;
cin>>i;
cout<<"多项式中的系数"<<endl;
for(int j=0;j<=i;j++)
cin>>a[j];
int sum=polynomialNorm1(i,a,x);
cout<<sum;
system("pause");
//递归
sum=polynomialNorm2(i,i,a,x);
cout<<sum;
return 0;
}
0 0
- 算法引论之多项式求解(递归和非递归实现)
- 二分查找算法递归和非递归实现(C++)
- 二分搜索算法(递归和非递归实现)
- !采用递归和非递归方法求解F(n)
- 算法笔记之 全排列的 非递归求解
- (递归+非递归)迷宫求解
- 全排列算法非递归实现和递归实现
- 全排列算法非递归实现和递归实现
- 全排列算法非递归实现和递归实现
- php折半查找算法-递归实现和非递归实现
- 全排列算法之非递归实现
- 快速排序算法递归和非递归实现 [# 29]
- 分别使用递归和非递归实现二分查找算法
- 单链表的逆序实现,递归和非递归算法
- 二叉树三种遍历算法递归和非递归实现
- 二分查找算法递归和非递归实现
- 欧几里得算法求最大公约数的递归和非递归实现
- 归并算法的递归和非递归实现
- dnf update --exclude=kernel*
- hdu 4552 字符串前缀数目统计
- HDU2037 排序+贪心
- linux ctrl + s 假死
- andorid studio 配置NDK环境
- 算法引论之多项式求解(递归和非递归实现)
- android 项目练习:自己的词典app——生词本(一)
- Java的浅表克隆和深表克隆
- Python抓取one网页上的内容
- 方法中的内部类不能访问该方法的局部变量
- 生成dll错误
- More Effective C++----(18)分期摊还期望的计算
- 计算连续bit 1个数
- 见过的介绍ORB最清楚的博文