好长时间没有写代码(感觉自己更弱了),今天晚上就把数据结构的链表和邻接表部分实现了(手都生了),第一次写邻接表,觉得还是邻接矩阵好很多,毕竟建表还是挺麻烦的.....顺便把bfs和dfs加了进去,刚学数据结构或者算法入门的可以看看,我是小菜,大神 求别喷......
过两天再把几种排序和查找的时空分析和代码实现总结一下,顺便自己也能学到很多,快要考试了,ACM的步伐就放缓一下下......
//图的邻接表储存及搜索 ,第一次写邻接表,还是比较麻烦的 ,下面的代码以有向图为例进行分析
//邻接矩阵就比较简单了,直接把p=p->next改为循环查找,然后操作都是一样的
//其实我觉得邻接表比邻接矩阵没有好到哪去,建表多出一步啊 ,做题还是矩阵来的方便
#include<iostream>
#include<queue>
#include<stack>
#include<cstring>
#define N 10000 //顶点个数
using namespace std;
int vist[N];
struct ArcNode //顶点的一个边节点
{
int value ; //该邻接点 的值
ArcNode *nextver; //下一个 邻接点的指针
};
struct K_Node{
// int value; // 可有可无,如果顶点是从0开始计数value=数组下标,否则等于数组下标加一
ArcNode *nextver; // 顶点的出边