
数据结构
文章平均质量分 78
jphaoren
这个作者很懒,什么都没留下…
展开
-
c++ stl 哈希表(未完成)
<br />#include "stdafx.h"<br />#include <iostream><br />#include <string><br />#include <vector><br />#include <list><br />using namespace std;<br /><br />int hash(const string& str , int hashTableSize)<br />{<br /> int hasVal = 0;<br /> for ( int i =0 ;i原创 2010-08-02 00:03:00 · 799 阅读 · 0 评论 -
记录各哈希表的网站
<br />http://www.cppblog.com/aurain/category/10906.html转载 2010-09-26 18:03:00 · 623 阅读 · 0 评论 -
遍历二叉树的非递归算法
<br />编写的方法:根据树中结点的遍历规律及顺序直接写出其非递归算法。<br />先序非递归算法<br />【思路】<br />假设:T是要遍历树的根指针,若T != NULL<br />对于非递归算法,引入栈模拟递归工作栈,初始时栈为空。<br />问题:如何用栈来保存信息,使得在先序遍历过左子树后,能利用栈顶信息获取T的右子树的根指针?<br />方法1:访问T->data后,将T入栈,遍历左子树;遍历完左子树返回时,栈顶元素应为T,出栈,再先序遍历T的右子树。<br />方法2:访问T->data转载 2011-05-16 19:31:00 · 841 阅读 · 0 评论 -
用BFS找最短路,并打印路径
<br />转自:http://lingyibin.javaeye.com/blog/849828<br /> <br />我想大部分人都用Floyd或者Dijstra算法,甚至dfs算过最短路吧。<br />其实BFS也可以计算最短路。(补充:本文只针对无权图,有权图很难用BFS)<br />当我们用BFS找端对端最短路时,从出发点开始,第一次遍历到终点时过的那条路径就是最短的路径。(读者可以思考一下为什么!)<br />下面就用邻接表来实现一下BFS最短路,并把路径打出来。<br /> Cpp代码 #i转载 2011-03-29 13:11:00 · 5517 阅读 · 0 评论 -
无向图最短路径问题
转自:http://giszpp.spaces.live.com/blog/cns!4593EEA7FACB3D7F!435.entry问题描述:在一个无向图中,有若干个点。某些点存在路径。如何从一个点到达另一个点使走的路程最短? 它是运用贪心的算法不断添加点从而到达终点。建立一个集合,在代码中可以用来标记一下就可以。这个集合的初始时只有起点,我们把从源到u且中间只经过S中顶点的路程为从源到u的特殊路径,并用dist数组记录当前每个顶点所对应的最短特殊路径。Dijkstra算法从源出发,达到直接相连的转载 2011-03-29 13:12:00 · 13168 阅读 · 2 评论 -
无权无向图的邻接矩阵的BFS简单算法实现
<br />#define MAX_VEX 20<br />//#define INFINITY 65535<br />#define INFINITY 0<br />class Graph<br />{<br />public:<br /> Graph();<br /> ~Graph(){};<br /> <br /> int FirstVex(int i);<br /> int NextVex(int i , int j);<br /> void BFS_Graph(int start,int e原创 2011-03-30 20:06:00 · 1743 阅读 · 1 评论