摘要:
直接上代码[代码][代码] 阅读全文
随笔分类 - 算法与数据结构
各种排序算法分析总结
2010-10-14 16:00 by Phoenix'K, 694 阅读, 收藏, 编辑
摘要:
排序算法: 1)分类: 1)插入排序(直接插入排序、希尔排序) 2)交换排序(冒泡排序、快速排序) 3)选择排序(直接选择排序、堆排序) 4)归并排序 5)分配排序(箱排序、基数排序) 所需辅助空间最多:归并排序 所需辅助空间最少:堆排序 平均速度最快:快速排序 不稳定:快速排序,希尔排序,堆排序。 1)选择排序算法的时候 1.数据的规模 ; 2.数据的类型 ; 3.数据已... 阅读全文
常用算法之冒泡排序
2010-04-12 20:56 by Phoenix'K, 294 阅读, 收藏, 编辑
摘要:
其实我认为冒泡是最没有必要说的一个算法,如果连冒泡都不知道的话,我觉得就不能谓之学过算法。这个应该是属于特别简单的一个算法,很基本,我记得当时我们是讲算法的时候,讲的第一个就是这个冒泡排序。我也就不多说其他了,我这里写上纯粹是为了一个完整性。 效率O(n*n),稳定排序。[代码] 阅读全文
常用排序之选择排序(c++)
2010-04-07 17:26 by Phoenix'K, 2535 阅读, 收藏, 编辑
摘要:
选择排序的原理还是比较简单的,在数组array[begin:end]中先选定一个数array[begin],再在余下的数中遍历,如果找到比array[begin]小的数,那么就将这个数作为选定的数,再往下遍历,如果还有更小的,那么继续换掉下标,直到找到最小的为止,然后将这个最小和数组第一个数array[0]交换,再在余下的数中找到最小的放在第二个位置array[1], 。。。[代码]选择排序,n*... 阅读全文
快速排序算法(c++)
2010-04-07 16:56 by Phoenix'K, 3385 阅读, 收藏, 编辑
摘要:
眼看就要走进社会,开始应聘各大公司了。 抽空学习了一下排序,听闻遇见这些排序算法的概率是到达80%以上,而且是手写的那种,这不,我也开始弄弄,千万不能载在这个上面,这个估计都是很值钱的答题。 快速排序算法是基于分治策略的一个排序算法,基本思想是对于输入的数组array[begin:end]按一下三个步骤进行排序: 1. 分解:以array[begin]为基准元素将array[begin:end]... 阅读全文