- 博客(3)
- 收藏
- 关注
原创 大整数乘法
问题介绍:分析算法的时间复杂性,一般将执行一次加法或乘法的时间当作常数。但如果需要处理的数很大,超过计算机硬件对整数的表示范围。用浮点数又无法得到精确结果,就需要用特殊的算法来实现; 设X,Y都是n位二进制整数,计算它们的乘积。若直接对应位相乘进位相加的计算方法,时间复杂度为O(n2)。下面用分治法来设计更有效的算法; 2.算法思想:要想改变是将复杂度,应尽量减少乘法次数。...
2019-09-10 19:26:13 258
原创 分治法的基本思想
分治法得基本思想是将一个规模为n的问题分解为k个规模为m的相互独立且与原问题解法相同的子问题,然后将子问题的解合并得到原问题的解。由此可见,分治法设计出的程序一般是递归算法,设解决一个规模为1的问题需要1个单位时间,再设将k个子问题的解合并为原问题的解所需时间为f(n),则递归算法的时间复杂度为: ...
2019-09-10 19:21:56 9229
原创 二分搜索技术
给定已排好的n个元素a[0:n-1],在这n个元素中找出元素x。一:算法思想:将n个元素分成个数大致相同的两半,取a[n/2]与x比较; 若(a)x=a[n/2],找到x,算法结束; (b)x>a[n/2],在数组右边继续寻找; (c)x<a[n/2],在数组左边继续寻找;二:实现代码:1. template&...
2019-09-10 16:29:42 221
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人