代码改变世界

随笔分类 -  算法与数据结构

数据结构——队列(C语言实现)

2010-11-09 22:58 by Phoenix'K, 464 阅读, 收藏, 编辑
摘要: 直接上代码[代码][代码] 阅读全文

数据结构——栈(C语言实现)

2010-11-07 13:50 by Phoenix'K, 583 阅读, 收藏, 编辑
摘要: 栈,比较简单,没什么好说的,直接上代码。代码代码 阅读全文

各种排序算法分析总结

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]... 阅读全文