算法设计与分析习题与实验题(12.18).pdfVIP

  • 14
  • 0
  • 约4.27万字
  • 约 28页
  • 2021-10-07 发布于上海
  • 举报
《算法设计与分析》习题 第一章 引 论 习题 1-1 写一个通用方法用于判定给定数组是否已排好序。 解答: Algorithm compare(a,n) Begin J=1; While (jn and a[j]=a[j+1]) do j=j+1; If j=n then return true Else While (jn and a[j]=a[j+1]) do j=j+1; If j=n then return true else return false end if End if end 习题 1-2 写一个算法交换两个变量的值不使用第三个变量。 解答: x=x+y; y=x-y; x=x-y; 习题 1-3 已知 m,n 为自然数,其上限为 k (由键盘输入,1=k=109),找出满 足条件 (n2 2 2 2 2 达到最大的 m、 n。 -mn-m ) =1 且使 n +m 解答: m:=k; flag :=0; repeat n:=m; repeat l:=n*n-m*n-m*n ; if ( l*l =1) then flag: =1 else n:=n -1; until (flag =1) or (n=0) if n=0 then m:=m -1 until (flag =1) or (m=0); 第二章 基础知识 习题 2-1 求下列函数的渐进表达式: 2 2 n 3 n 3n +10n; n /10+2 ; 21+1/n; logn ; 10 log3 。 2 2 2 n n 解答: 3n +10n=O (n ), n /10+2 =O (2 ), 21+1/n=O (1), 3 n logn =O (log n),10 log3 =O (n)。 习题 2-2 说明 O(1)和 O(2)的区别。 习 题 2-3 照 渐 进 阶 从 低 到 高 的 顺 序 排 列 以 下 表 达 式 : n! , 2 n 2 / 3 4 n , log n ,3 ,20 n , 2, n 。 2 n 2 3 解答: 照渐进阶从低到高的顺序为: n! 、 3 、 4 n 、 n 、20n、logn、2 习题 2-4 (1) 假设某算法在输入规模为 n 时的计算时间为 T ( n ) 3 2 n 。在某台计算机 上实现并完成该算法的时间为 t 秒。现有另外一台计算机,其运行速度为 第一

文档评论(0)

1亿VIP精品文档

相关文档