数据结构
芭乐_0916
喜欢学习的人
展开
-
拓扑排序(C语言实现)
图文并茂,超详细的拓扑排序。包含C语言实现和超详细的注释原创 2016-12-14 17:31:04 · 23261 阅读 · 9 评论 -
无处不在的二分查找
大大减少比较次数的二分查找,大家可以看一下,自己写测试代码转载 2016-12-19 08:46:33 · 444 阅读 · 0 评论 -
希尔排序-C语言实现
要点希尔(Shell)排序又称为缩小增量排序,它是一种插入排序。它是直接插入排序算法的一种威力加强版。该方法因DL.Shell于1959年提出而得名。希尔排序的基本思想是:把记录按步长 gap 分组,对每组记录采用直接插入排序方法进行排序。随着步长逐渐减小,所分成的组包含的记录越来越多,当步长的值减小到 1 时,整个数据合成为一组,构成一组有序记录,则完成排序。我们转载 2016-12-26 11:10:49 · 545 阅读 · 0 评论 -
排序算法的稳定性及其意义
稳定性的定义 假定在待排序的记录序列中,存在多个具有相同的关键字的记录,若经过排序,这些记录的相对次序保持不变,即在原序列中,ri=rj,且ri在rj之前,而在排序后的序列中,ri仍在rj之前,则称这种排序算法是稳定的;否则称为不稳定的。判断方法对于不稳定的排序算法,只要举出一个实例,即可说明它的不稳定性;而对于稳定的排序算法,必须对算法进行分析从而得到稳定的特性。需原创 2016-12-27 09:47:52 · 28983 阅读 · 3 评论 -
马踏棋盘的实现
马踏棋盘是经典的程序设计问题之一,主要的解决方案有两种:一种是基于深度优先搜索的方法,另一种是基于贪婪算法的方法。第一种基于深度优先搜索的方法是比较常用的算法,深度优先搜索算法也是数据结构中的经典算法之一,主要是采用递归的思想,一级一级的寻找,最后找到合适的解。而基于贪婪的算法则是依据贪婪算法的思想设置一种标准,然后依据标准进行选择,从而得到解,但是他不一定能够得到最优解。 关于马转载 2017-03-10 13:32:50 · 385 阅读 · 0 评论 -
最大子列和的在线打表算法
子列被定义为原连续的一段数字,找出具有列中li最大和的一段连续子列,返回它们的和。一般通常的做法是穷举所有子列和,从中找出最大值。int MaxSubsequence(int List[],int N) /*List[]整数数组,N为数组长度*/{ int i,j; int ThisSum,MaxSum=0; for(i=0;i<N;i++...原创 2018-09-13 09:41:04 · 235 阅读 · 0 评论