- 1、本文档共11页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
选择题:CCBDCA
试分析下面各程序段的时间复杂度。
O( 1)
O( m*n)
O( n2)
O (log 3n)
因为x++共执行了 n-1+ n-2+ +仁n(n-1)/2,所以执行时间为 O ( n2)
0( .. n )
第2章线性表
1?选择题
babadbcabdcddac
2?算法设计题
(6)设计一个算法,通过一趟遍历在单链表中确定值最大的结点。
ElemType Max (Li nkList L ){
if(L-n ext==NULL) return NULL;
pmax=L-n ext;法设计题
(2)回文是指正读反读均相同的字符序列,如 abba和abdba”均是回文,但good”不是回文。试写
一个算法判定给定的字符向量是否为回文。 (提示:将一半字符入栈)?
根据提示,算法可设计为:
合应用题
(1)已知模式串t= ‘ abcaabbabcab 写出用KMP法求得的每个字符对应的 next和nextval函数值。
模式串t的next和nextval值如下:
j
110 11 12
t串
abcaabbab cab
n ext[j]
011122312345
n extval[j]
011021301105
(3)数组A中,每个元素 A[i,j]的长度均为32个二进位,行下标从-1到9,列下标从1到11,从首地址S 开始连续存放主存储器中,主存储器字长为 16位。求:
存放该数组所需多少单元?
存放数组第4列所有元素至少需多少单元?
数组按行存放时,元素 A[7,4]的起始地址是多少?
数组按列存放时,元素 A[4,7]的起始地址是多少?
每个元素32个二进制位,主存字长 16位,故每个元素占2个字长,行下标可平移至 1到11。
(1) 242 (2) 22 (3) s+182 (4) s+142
⑷ 请将香蕉banana用工具H( ) — Head( ),T( ) — Tail() 从L中取出。
L=(apple,(ora nge,(strawberry,(ba nan a)),peach),pear)
H (H (T ( H (T ( H (T (L)))))))
(5)写一个算法统计在输入字符串中各个不同字符出现的频度并将结果存入文件(字符串中的合法字符为
A-Z这26个字母和0-9这10个数字)。
void Count ()
//统计输入字符串中数字字符和字母字符的个数。
{int i , num[36];
char ch ;
for (i = 0; i36 ; i++ ) num[i] =0; // 初始化
while ((ch= getchar ()) != ‘#) // ‘#表示输入字符串结束。
if ( O =ch= 9) {i=ch — 48;num[i]++ ; // 数字字符
else if ( A =ch= Z) {i=ch-65+10;num[i]++ ; // 字母字符for (i=0 ; i10 ; i++ ) // 输出数字字符的个数
printf (数字% d 的个数=% d\n ”,i , num[i]);for (i = 10; i36 ; i++ ) // 求出字母字符的个数
printf (字母字符% c 的个数=% d\n ”,i + 55, num[i]);
} //算法结束。
第5章树和二叉树
1 ?选择题
ADDCA CCBDC CCACC 2?应用题
(2)设一棵二叉树的先序序列: A B D F C E G H ,中序序列:
①画出这棵二叉树。
②画出这棵二叉树的后序线索树。
③将这棵二叉树转换成对应的树(或森林) 。
(1) (2)
(3)假设用于通信的电文仅由 8个字母组成,字母在电文中出现的频率分别为,
①试为这8个字母设计赫夫曼
② 试设计另一种由二进制表示的
③对于上述实例,比较两种方案的优缺点 解:方案1;哈夫曼编码 先将概率放大100倍,以方便构造哈夫曼树。
w={7,19,2,6,32,3,21,10},按哈夫曼规则:【[(2,3) , 6], (7,10)】,
19, 21,32
19
100
7
(40)
21
字母
编号
对应
编码
出现
频率
1
1100
2
00
以一叉链表
=作为一叉树的
存储结构编
4
1110
1 J —UI 1 J : U
5
10
(60) 0
1
0汎
0 1
19(如
32
6 /y
50 1
/\0 /
\30
A 6
对应
2
―
1
频率
1
3
的WPL
2的编号L
吉论:哈夫.
万案
万案
+++4+++5+=++=编码
T+++++++=3 一 材长二进制编码片 001
010
曼编码优于等
3 ?算法设i计题
写以下算法 3一一
计二叉树的叶结
文档评论(0)