有序链表的合并是单链表的基本操作之一,本文分别用递归和非递归两种方式实现两个有序链表(不含头结点)的合并。...
分类:
其他好文 时间:
2014-11-22 18:54:36
阅读次数:
243
单链表逆置是链表的基本操作之一,我分别用递归和非递归两种方式实现单链表(不含头结点)的逆置,代码还是比较简洁的,欢迎批评指正。...
分类:
其他好文 时间:
2014-11-22 17:29:47
阅读次数:
203
在一个无向连通图中,如果有一个顶点集合,删除这个顶点集合,以及这个集合中所有顶点相关联的边以后,原图变成多个连通块,就称这个点集为割点集合。
求割点与桥的算法是R.Tarjan发明的,本文用邻接矩阵存储图的信息,实现了递归和非递归两种算法。 感觉非递归算法或许有更好的表达,但一时想不出来,请大牛指点,谢谢!...
分类:
其他好文 时间:
2014-11-21 23:22:51
阅读次数:
408
对于矩阵连乘机问题就不概述了,主要是找出最佳的结合方式使得整个式子的运算次数最少。
对于这个问题之所以用动态规划的原因点如下:
第一:由于矩阵连乘机本身可以划分为若干个子矩阵链连乘机,而且若干个子矩阵链的最优解组合起来就是原矩阵链的最优解。
第二:对于原矩阵链的不同划分中个子问题是存在重叠子问题。
所以当此问题用动...
分类:
其他好文 时间:
2014-11-21 14:29:41
阅读次数:
708
在一个无向连通图中,如果有一个顶点集合,删除这个顶点集合,以及这个集合中所有顶点相关联的边以后,原图变成多个连通块,就称这个点集为割点集合。
求割点与桥的算法是R.Tarjan发明的。本文用边表集存储图的信息,实现了递归和非递归两种算法。...
分类:
其他好文 时间:
2014-11-21 09:11:16
阅读次数:
243
转载:http://blog.csdn.net/feixiaoxing/article/details/6844826作为一个100万的数据,如果使用普通的查找方法,那么每一个数据查找平均下来就要几十万次,那么二分法的查找呢,20多次就可以搞定。这中间的差别是非常明显的。既然排序有这么好的效果,那么...
分类:
编程语言 时间:
2014-11-20 23:26:14
阅读次数:
333
二叉树的递归和非递归算法: (做这个的时候,总是逻辑跟不上,会搞混,做的时候发现自己对结构体指针的使用有些糊涂。)代码如下:#include #include #define Max 100typedef struct Node{ char Date; struct Node *Lchild; //...
分类:
其他好文 时间:
2014-11-19 20:11:05
阅读次数:
188
一、层次遍历:借助队列实现 1 void LevelOrderTraversal(BiTree root) 2 { 3 BiTree e = root;//从根节点开始 4 Queue *q; 5 InitQueue(q); 6 7 if(e)//若根结点非...
分类:
其他好文 时间:
2014-11-19 00:29:25
阅读次数:
238
【题目】不使用递归,对二叉树进行先序、中序和后序遍历【思路】利用栈先序:1. 输出当前结点2. 把右孩子放到栈中3. 当前指针指向左孩子4. 重复1-3,直到叶子结点5. 如果栈不空,则从栈里POP出一个结点,赋值给当前节点6. 重复1-5中序:1. 如果当前节点不为空,把当前节点PUSH2. 当前...
分类:
其他好文 时间:
2014-11-17 15:30:06
阅读次数:
141