已知Ackermann函数定义如下:①写出计算Ack(m,n)的递归算法,并根据此算法给出出Ack(2,1)的计算过
已知Ackermann函数定义如下:
①写出计算Ack(m,n)的递归算法,并根据此算法给出出Ack(2,1)的计算过程。
②写出计算Ack(m,n)的非递归算法。
已知Ackermann函数定义如下:
①写出计算Ack(m,n)的递归算法,并根据此算法给出出Ack(2,1)的计算过程。
②写出计算Ack(m,n)的非递归算法。
第1题
Ackermann函数A(m,n)可递归定义如下:
试设计一个计算A(m,n)的动态规划算法,该算法只占用O(m)空间(提示:用两个数组val[0:m]和ind[0:m],使得对任何i有val[i]=A(i,ind[i])).
第3题
已知函数f(). G()的定义如下所示,调用函数f时传递给形参x的值是5。若g(a)采用引用调用(call by reference)方式传递参数,则函数f的返回值为();若g(a)采用值调用(.call by value)的方式传递参数,则函数f的返回值为()。其中,表达式“X>>1”的含义是将x的值右移1位,相当于x除以2。
A.35B.32C.11D.7A.35B.32C.11D.7
第4题
A.10
B.15
C.25
D.30
第5题
/****************** 文件shape.h*************************/
const float PI=3.14159f; // 定义圆周率常量
class Shape // 几何图形抽象类
{
public:
virtual float GetPerimeter()=0; // 纯虚函数,计算周长
virtual float GetAre()=0; // 纯虚函数,计算面积
};
class Rectangle: public Shape // 矩形类
{
public:
Rectangle (float len,float wid):length(len),width(wid){}
~Rectangle (){}
float GetPerimeter() {return 2*(length width);} // 计算矩形周长
float GetAre() {return length*width;} // 计算矩形面积
private:
float length, width; // 矩形的长和宽
};
class Circle: public Shape // 圆类
{
public: // 在下面编写每个成员函数
private:
float rad; // 圆的半径
};
class Square: public Rectangle // 正方形类
{
public:
Square(float len): Rectangle(len,len){}
~Square(){}
};
第8题
文法G的产生式如下:
①试写出一个语法制导定义,它输出对括号个数;
②写一个翻泽方案,打印每个a的嵌套深度。((a)a),打印2,1
第10题
已知横向数字滤波器的结构如图8-12所示.试以M=8为例
(1)写出差分方程:(2)求系统函数H(z);(3)求单位样值响应h(n);
(4)画出H(z)的零、极点分布图;(5)粗略画出系统的幅度响应.