一、简答题
1.常见的逻辑结构有哪几种?各自的特点是什么?常用的存储结构有哪几种?各自的特点是什么?
2.简述算法和程序的区别。
3.试举一个数据结构的例子,叙述其逻辑结构、存储结构、数据运算这三方面的内容。
4.运算是数据结构的一个重要方面。试举例说明两个数据结构的逻辑结构和存储结构完全相同,只是对于运算的定义不同,使得两个结构具有显著不同的特性。
5.写出下列各程序段关于n的时间复杂度。
(1)a=1;m=1
(2)设n是偶数。
6.什么是递归?递归程序有什么优缺点?
7.任何一个递归过程都可以转换成非递归过程吗?
8.递归、迭代、回溯有何区别?
二、算法设计题
1.计算一元n次多项式的值。P(x,n)=a 0 +a 1 x+a 2 x 2 +…+a n x n ,输入x,n,a 0 ,a 1 ,…,a n ,输出多项式P(x,n)的值。设计算法求解,请选择合适的输入、输出格式,要求算法具有较好的时间性能。
2.若某人第一个月的工资是1500元,以后每一年的工资都在原基础上增加10%,那么第n年他的工资是多少?请分别用递归和递推两种方法编写算法实现。
3.请编写程序用递归算法实现数组中元素的逆置。