【编程的5种基础算法】
1、递归算法:在程序中不断反复调用自身来达到求解问题的方法 。递归算法代码简洁、可读型号,但是并没有减少代码规模好节省内存空间 。
2、快速排序算法:快速排序是由东尼·霍尔所发展的一种排序算法 。在平均状况下,排序n个项目要Ο(nlogn)次比较 。在最坏状况下则需要Ο(n2)次比较,但这种状况并不常见 。事实上,快速排序通常明显比其他Ο(nlogn)算法更快,因为它的内部循环(innerloop)可以在大部分的架构上很有效率地被实现出来 。
3、二分查找算法:二分查找算法是一种在有序数组中查找某一特定元素的搜索算法 。搜素过程从数组的中间元素开始,如果中间元素正好是要查找的元素,则搜素过程结束;如果某一特定元素大于或者小于中间元素,则在数组大于或小于中间元素的那一半中查找,而且跟开始一样从中间元素开始比较 。
4、递推算法:是一种理性思维的代表,根据已有的数据和关系,逐步推导而得到结果 。根据已知结果和关系,求解中间结果,判断是否达到要求,如果没有达到,则继续根据已知结果和关系求解中间结果;如果达到要求,则表示找到了一个正确的结果 。
5、分治算法:将一个计算复杂的问题分为规模较小、计算简单的小问题求解,然后综合各个小问题,得到最终问题答案 。确定一个规模为n的难解决问题难以直接解决 。将该问题分解为m个规模较小的子问题a,a们之间相互独立,与原问题形式相同 。递归地解决这些小问题,即一个一个解决 。然后,将各子问题的解合并到原问题的解 。
-- 展开阅读全文 --
推荐阅读
- 电费一档二档三档的分别是多少
- 网络沉迷怎么办
- 照片kb是什么意思啊?
- 怎么看出租车打表作弊
- 空调电线怎么安装
- 风扇用久了转不动是什么原因
- 惠普墨盒怎么加墨803
- 空调细管凉粗管不凉怎么回事
- 联想笔记本电脑键盘失灵怎么解决