当前位置: 首页 > news >正文

国外网站怎么建设seo应该如何做

国外网站怎么建设,seo应该如何做,网站被降权会发生什么影响吗,网站建设费入何科目目录 一.深度优先搜索遍历 1.深度优先遍历的方法 2.采用邻接矩阵表示图的深度优先搜索遍历 3.非连通图的遍历 二.广度优先搜索遍历 1.广度优先搜索遍历的方法 2.非连通图的广度遍历 3.广度优先搜索遍历的实现 4.按广度优先非递归遍历连通图 一.深度优先搜索遍历 1.深…目录 一.深度优先搜索遍历 1.深度优先遍历的方法 2.采用邻接矩阵表示图的深度优先搜索遍历 3.非连通图的遍历 二.广度优先搜索遍历 1.广度优先搜索遍历的方法 2.非连通图的广度遍历 3.广度优先搜索遍历的实现 4.按广度优先非递归遍历连通图 一.深度优先搜索遍历 1.深度优先遍历的方法 从图中一个未访问的顶点V开始沿着一条路一直走到底如果到达这条路尽头的节点 则回退到上一个节点再从另一条路开始走到底…不断递归重复此过程直到所有的顶点都遍历完成。 以下面无向图为例2为起点 (1)以2为起点访问1 (2)以1为起点因为“1”和“2”之间的边已经走过所以走3 (3) 同理以3为起点访问5 (4)到5后没有可访问的点返回33也没有可访问的点到1后可访问之前没有访问过的4 (5)4访问6至此遍历完所有的点DFS(深度优先搜索遍历)2-1-3-5-4-6 2.采用邻接矩阵表示图的深度优先搜索遍历 #define MAX_VERTEX_NUM 100typedef struct {// 定义图的相关信息int vexnum; // 顶点数int arcs[MAX_VERTEX_NUM][MAX_VERTEX_NUM]; // 邻接矩阵// 其他成员... } AMSGraph;bool visited[MAX_VERTEX_NUM]; // 记录顶点是否被访问过void DFS(AMSGraph G, int v) {cout v;visited[v] true;for (int w 0; w G.vexnum; w) {if (G.arcs[v][w] 1 !visited[w]) {DFS(G, w);}} } http://t.csdn.cn/HmcOt 之前的一篇文章已经详细说明了邻接矩阵和邻接表的区别这里同理 1.用邻接矩阵表示图遍历图中每一个顶点都要从头扫描该顶点所在行时间复杂度O() 2.用邻接表表示图虽然有2e个表结点但只需扫描e个结点即可完成遍历加上访问n个头结点的时间时间复杂度为O(ne) •稠密图适于在邻接矩阵上进行深度遍历 •稀疏图适于在邻接表上进行深度遍历。 3.非连通图的遍历 左边的连通分量进行深度优先搜索遍历再在b,g之中选择一个点进行深度优先搜索遍历 其中一种合理的顶点访问次序为 a,c,h,d,f,k,e,b,g 二.广度优先搜索遍历 1.广度优先搜索遍历的方法 从某个顶点V出发访问该顶点的所有邻接点V1V2..VN从邻接点V1V2...VN出发再访问他们各自的所有邻接点重复上述步骤直到所有的顶点都被访问过 以如下图为例起点为V1 一层一层进行访问广度优先搜索遍历的结果为V1-C2-V3-V4-V5-V6-V7-V8 2.非连通图的广度遍历 与连通图类似在b,g中任意选择一个点开始  合理的顶点访问次序为a-c-d-e-f-h-k-b-g 3.广度优先搜索遍历的实现 广度优先搜索遍历的实现与树的层次遍历很像可以用队列进行实现(出队一个结点将他的邻接结点入队) 以下动图来自爱编程的西瓜方便大家理解遍历过程 4.按广度优先非递归遍历连通图 #include iostream using namespace std;const int MAX_SIZE 100; // 队列的最大容量 const int MAX_VERTICES 100; // 图的最大顶点数struct Queue {int data[MAX_SIZE];int front; // 队头指针int rear; // 队尾指针 };struct Graph { // 定义图bool edges[MAX_VERTICES][MAX_VERTICES]; // 邻接矩阵int numVertices; // 实际顶点数 };void InitQueue(Queue Q) {Q.front 0;Q.rear -1; }bool EnQueue(Queue Q, int x) {if (Q.rear MAX_SIZE - 1) {// 队列已满无法插入return false;}Q.data[Q.rear] x;return true; }bool DeQueue(Queue Q, int x) {if (Q.front Q.rear) {// 队列为空无法出队return false;}x Q.data[Q.front];return true; }bool QueueEmpty(Queue Q) {return Q.front Q.rear; }// 找到顶点u的第一个邻接点并返回 int FirstAdjVex(Graph G, int u) {for (int v 0; v G.numVertices; v) {if (G.edges[u][v]) {return v;}}return -1; // 或者返回一个特殊的值表示找不到邻接点 }// 找到图 G 中顶点 u 相对于顶点 w 的下一个邻接点并返回 int NextAdjVex(Graph G, int u, int w) {for (int v w 1; v G.numVertices; v) {if (G.edges[u][v]) {return v;}}return -1; // 或者返回一个特殊的值表示找不到下一个邻接点 }void BFS(Graph G, int v) {cout v;bool visited[MAX_VERTICES] { false };visited[v] true; // 访问第v个顶点Queue Q;InitQueue(Q);EnQueue(Q, v); // v进队while (!QueueEmpty(Q)) {int u;DeQueue(Q, u); // 队头元素出队并置为ufor (int w FirstAdjVex(G, u); w 0; w NextAdjVex(G, u, w)) {if (!visited[w]) { // w为u的尚未访问的邻接点cout w;visited[w] true;EnQueue(Q, w); // w进队(将访问的每一个邻接点入队)}}} }广度优先搜索遍历算法的效率 1.如果使用邻接矩阵则BFS对于每一个被访问到的顶点都要循环检测矩阵中的整整一行时间复杂度为O() 2.用邻接表来表示图虽然有2e个表结点但只需扫描e个结点即可完成遍历加上访问n个头结点的实践时间复杂度为O(ne)   深度优先搜索遍历(DFS)与广度优先搜索遍历(BFS)算法的效率 1.空间复杂度相同都是O(n)借用了堆栈或队列 2.时间复杂度只与存储结构(邻接矩阵【O()】或邻接表【O(ne)】)有关而与搜索路径无关
http://www.hkea.cn/news/14406685/

相关文章:

  • 网站内容维护合同建筑外观设计网站
  • 网上做效果图网站有哪些软件有哪些广告设计与制作专业需要美术功底吗
  • 口碑好的免费网站建设专业做礼品团购的网站
  • 做网站分几步wordpress demo data
  • 电商网站前台模块网站开发的书
  • 即墨有做网站的吗湖南网站建设有限公司
  • 南京微信网站开发wordpress功能 更改
  • 网级移动营销免费下载优化大师
  • 做鞋子皮革有什么网站wordpress调用文章的tags
  • 焦作网站建设哪家专业自贡企业网站建设公司
  • 高端网站设计推广v信haotg8旅游网站界面设计
  • 永嘉县住房和城乡规划建设局网站公司网页制作培训试题
  • 网站维护运行建设报告宁波做外贸网站建设
  • 想做苗木生意网站怎么怎么做一家专门做打折的网站
  • 新浪博客怎么给自己网站做链接吗国家高新技术企业证书图片
  • 比较好的网站开发项目如何做个网站做cpa
  • 建立网站 用英语网站标题算关键词优化吗
  • asp.net 网站的编译网页制作ppt模板
  • 老的网站为什么要改版新网站wordpress tint主题
  • 赤壁专业建站公司WordPress文怎么写
  • 网站平台建设步骤电商公司简介
  • 做网站一些专业术语哈尔滨公共资源交易网建设工程
  • 上海做网站建设景区电子商务网站建设
  • 有什么做分销的几个网站开发网站
  • 上海远丰电商网站建设公司怎么样山东省优质校建设网站
  • 网站什么模板做的seo优化技术是什么
  • 做虾网站该起啥名好wordpress没有图片放大
  • 网站建设平台方案设计wordpress 置顶特色
  • 宝塔面板怎么做自己的网站wordpress创建标签
  • 微信公众号网站制作实时热点新闻