当前位置:文档之家› H3C和CISCO生成树对接

H3C和CISCO生成树对接

H3C和CISCO生成树对接
H3C和CISCO生成树对接

Cisco交换机支持的生成树协议类型

Cisco交换机所支持的生成树协议类型分别有:PVST(Per VLAN Spanning Tree)、PVST+(Per VLAN Spanning Tree Plus)、Rapid-PVST+(Rapid Per VLAN Spanning Tree Plu s)、MISTP(Multi Instance Spanning Tree Protocol)和MST(Multiple Spanning Tree)。在使用IOS 12.2及之后版本的catalyst系列交换机中,支持PVST+、Rapid-PVST和MST三种类型STP协议。同时,Cisco所采用的STP协议的BPDU报文格式和标准STP协议的BPD U报文格式不一样,而且发送的目的地址也改成了Cisco自己的保留地址01-00-0C-CC-CC-CD。

H3C交换机支持的生成树协议类型

H3C交换机支持的生成树协议有三种类型,分别是STP(IEEE 802.1D)、RSTP(IEEE 802. 1W)和MSTP(IEEE 802.1S),这三种类型的生成树协议均按照标准协议的规定实现,采用标准的生成树协议报文格式,大多数交换机采用固定的MAC地址00-E0-FC-09-BC-F9作为生成树协议报文的源MAC地址,目的MAC地址为01-80-C2-00-00-00。

是否能对

特殊配置命令或注意事项

H3C模式Cisco模式

STP模式PVST模式×-

STP模式PVST+模式√端口属于vlan 1

STP模式MISTP模式×-

STP模式MISTP-PVST+模式×-

STP模式MST模式√switchport link-type access MSTP模式PVST模式×-

MSTP模式PVST+模式√端口属于vlan 1

MSTP模式MISTP模式×-

MSTP模式MISTP-PVST+模式×-

MSTP模式MST模式√Stp config-digest-snooping

当Cisco设备使用Trunk端口与其他厂商设备的Trunk端口互联时,虽然可以做到STP的互通,以及消除环路,但是无法做到PVST协议自身的负载,原因是在其他VLAN中H3C的设备会把Cisco的BPDU报文当作普通的多播报文进行转发,而不会处理这些报文。

Cisco设备在非VLAN1中的BPDU报文不是标准的STP协议BPDU报文,而是其私有的PVS T协议报文。

当H3C交换机与Cisco交换机使用MSTP协议互通时,必须要在全局配置stp config-dige st-snooping命令,同时在与Cisco设备互联的端口上也要配置该命令,才能完成与Cisco的域内MSTP协议互通。

创建一个二叉树并输出三种遍历结果

实验报告 课程名称数据结构 实验项目实验三--创建一个二叉树并输出三种遍历结果 系别■计算机学院 _________________ 专业_______________ 班级/学号_____________ 学生姓名___________ 实验日期— 成绩______________________________ 指导 教师

实验题目:实验三创建一个二叉树并输出三种遍历结果 实验目的 1)掌握二叉树存储结构; 2)掌握并实现二叉树遍历的递归算法和非递归算法; 3)理解树及森林对二叉树的转换; 4)理解二叉树的应用一哈夫曼编码及WPL计算。 实验内容 1)以广义表或遍历序列形式创建一个二叉树,存储结构自选; 2)输出先序、中序、后序遍历序列; 3)二选一应用题:1)树和森林向二叉树转换;2)哈夫曼编码的应用问题。 题目可替换上述前两项实验内容) 设计与编码 1)程序结构基本设计框架 (提示:请根据所选定题目,描述程序的基本框架,可以用流程图、界面描述图、 框图等来表示) 2)本实验用到的理论知识遍历二叉树,递归和非递归的方法 (应用型

(提示:总结本实验用到的理论知识,实现理论与实践相结合。总结尽量简明扼要,并与本次实验密切相关,要求结合自己的题目并阐述自己的理解和想法) 3) 具体算法设计 1) 首先,定义二叉树的存储结构为二叉链表存储,每个元素的数 据类型Elemtype,定义一棵二叉树,只需定义其根指针。 2) 然后以递归的先序遍历方法创建二叉树,函数为CreateTree(),在输 入字符时要注意,当节点的左孩子或者右孩子为空的时候,应当输入一 个特殊的字符(本算法为“ #”),表示左孩子或者右孩子为空。 3) 下一步,创建利用递归方法先序遍历二叉树的函数,函数为 PreOrderTreeQ,创建非递归方法中序遍历二叉树的函数,函数为 InOrderTree(),中序遍历过程是:从二叉树的根节点开始,沿左子树 向下搜索,在搜索过程将所遇到的节点进栈;左子树遍历完毕后,从 栈顶退出栈中的节点并访问;然后再用上述过程遍历右子树,依次类 推,指导整棵二叉树全部访问完毕。创建递归方法后序遍历二叉树的 函数,函数为LaOrderTree()。 (提示:该部分主要是利用C、C++ 等完成数据结构定义、设计算法实现各种操作,可以用列表分步形式的自然语言描述,也可以利用流程图等描述) 4) 编码 #include #include #include typedef char DataType; #define MaxSize 100 typedef struct Node { DataType data; struct Node *lchild; struct Node *rchild; } *BiTree,BitNode;

H3C交换机与Cisco交换机STP协议对接注意事项

1、H3C交换机与CISCO交换机的MST互通 (1)由于思科对于mstp摘要计算方法特殊,导致H3C交换机和CISCO交换机在做MSTP对接时,即使它们的域配置相同,各自计算出的配置摘要也会不相同; (2)可通过如下方法和CISCO MSTP实现域内多实例的互通: 保证H3C交换机和CISCO交换机的MSTP域配置完全相同; 在全局和任一个和CISCO交换机相连的端口上使能Configuration Digest Snooping功能:stp config-digest-snooping。 [系统视图]stp config-digest-snooping [端口视图]stp config-digest-snooping (3)由于CISCO的MSTP状态机实现机制与H3C的有所不同,导致CISCO设备与H3C设备相连的指定端口不能快速迁移到Fowarding状态。为实现快速迁移,可在和CISCO设备互连的端口配置下面的命令: [端口视图] stp no-agreement-check [系统视图] stp interface interfacename no-agreement-check 2、H3C交换机与PVST+互通问题 (1)PVST+是基于vlan的私有协议,要与之互通必须满足一定条件才能互通配合; (2)PVST+在端口PVID的VLAN里发送的是标准BPDU报文,但在其它VLAN内发送的是特殊的SNAP报文。对于SNAP封装的Type字段,在以太网封装中,对Type 字段要求是值必须大于0x600,以此来区分Type和Length。 (3)正是由于PVST+报文封装格式中这个字段导致报文可能被许多设备丢弃而不做二层转发。在组网时: access口可以互通。 如果是trunk口,则必须保证下游discarding端口与PVST+逻辑discarding端口一致。也就是说标准stp设备只能做下游设备,不得做根。 PVST+与mstp多实例无法互连。

实习三--求无向连通图的生成树

实习三求无向连通图的生成树 1?需求分析 问题描述: 若要在n个城市之间建设通信网络,只需要架设n-1条路线即可。如何以最低的经济代价建设这个通信网,是一个网的最小生成树问题。 基本要求: (1) 利用克鲁斯卡尔算法求网的最小生成树,其中,以课本8.7节中的等 价类表示构造生成树过程中的连通分量。 (2) 利用普里姆算法求网的最小生成树。 (3) 以文本文件形式输出生成树中各条边以及他们的权值。 2.设计 (1) 设计思想:创建邻接矩阵存储结构。本程序主要分为两个模块:创建邻接矩阵模块,最小生成树模块。创建邻接矩阵模块:以邻接矩阵的存储形式创建无向网。最小生成树模块:生成最小生成树,输出其各条边及权值。 (2) 概要设计:int型LocateVex函数判断权值在矩阵的位置;声明CraeteGraph 函数创建邻接矩阵;声明kruskal函数用于生成最小生成树;声明main函数为程序调用步骤。 (3) 设计详细:a.将程序分为两个模块: B. 主函数流程图:

C. 最小生成树流程图 (4) 调试分析:--变量没定义就使用 --子函数嵌套定义; --使用数组是越界; (5) 用户手册:a.主页面: 解决:定义完变量在使用。 解决:子函数单独定义,可调用。 解决:注意数组的值,注意不能越界 b.输入顶点数及边数的信息:

d.输入顶点及权值 c.输入顶点信息 (6)测试结果:输出最小生成树及 权值 #i nclude #i nclude #i nclude #defi ne MAX 100 #defi ne MAX_VERTEXNUM 20 typedef char Vertex[MAX];〃 顶点字符串 typedef int Adjmatrix[MAX_VERTEXNUM][MAX_VERTEXNUM];〃 邻接矩阵 typedef struct//定义图 〔用空格隔 卷迎建设通 请输入顶蕉 譎入m 个顶点的信息* :青紹3条边的两个顶点及权値;〔用空格隔开) 欢迎建 i 珮入 请输入彳个顶点的信息; 論条迪的两个顶点及权值;(用空格隔开) 嚴费矗数颓边数’(用空槨研) 歸 个顶点的信息:(压空格隔开) 最小生成树的各条边及权值 为 1-2-1 飯黑边数:(用空格隔 开) (用空格隔开) 長和边数:(用空格隔开) (用空格隔开) 嬲边数

数据结构——二叉树的操作(遍历及树形输出)

/*实验三:二叉树遍历操作验证*/ #include #include #include #include #include #include #include using namespace std; #define OK 1 #define ERROR 0 #define OVERFLOW -2 int LeafNum;//叶子结点个数 //定义结构体 typedef struct BiTNode{ char data; //存放值 struct BiTNode *lchild,*rchild; //左右孩子 }BiTNode,*BiTree; //先序输入二叉树结点的值,空格表示空树 void createBiTree(BiTree &T) { char ch; //输入结点时用 scanf("%c",&ch); if(ch==' ') //若输入空格,该值为空,且没有左右孩子 { T=NULL; }else{ T=(BiTNode *)malloc(sizeof(BiTNode)); //分配结点空间 if(!T) //分配失败 { exit(OVERFLOW); } T->data=ch; //生成根结点 createBiTree(T->lchild); //构造左子树 createBiTree(T->rchild); //构造右子树 } } //递归方法先序遍历二叉树 void preOrderTraverse(BiTree T) {

if(T) //若非空 { if(T->data) { //输出 printf("%c",T->data); } preOrderTraverse(T->lchild); preOrderTraverse(T->rchild); } } //递归方法中序遍历二叉树 void inOrderTraverse(BiTree T) { if(T) //若非空 { preOrderTraverse(T->lchild); if(T->data) { //输出 printf("%c",T->data); } preOrderTraverse(T->rchild); } } //递归方法后序遍历二叉树 void postOrderTraverse(BiTree T) { if(T) //若非空 { preOrderTraverse(T->lchild); preOrderTraverse(T->rchild); if(T->data) { //输出 printf("%c",T->data); } } } //层序遍历二叉树 void LevelTraverse(BiTree T) { queue q;//建队 q.push(T);//根节点入队

华为思科命令比较

Cisco_H3C命令对照 思科Cisco 华为3COM 功能 enable system-view 进入特权模式 configure terminal \ 进入配置状态 show display 显示 show running-config display current 显示目前的运行配置show version disp version 显示版本 show start disp saved 显示已保存的配置 show tech-support dis diagnostic-information 显示全面的信息no undo 取消(删除) hostname sysname 更改机器名 \ lang chinese 进入中文状态 user local-user 新建修改用户 end return 退回到特权模式 exit quit 返回上级视图 exit quit telnet退出 router rip rip rip动态路由 router ospf ospf ospf路由 router bgp bgp bgp路由 write save 保存配置 erase delete 删除配置 0 simple 明文 7 cipher 密文 access-list acl 控制访问列表 host ip host host和ip名字对应 logging info-center 日志信息 encap link-protocol 封闭链路层协议 no debug all ctrl+d 取消所有debug命令 vlan database vlan 进入vlan的配置 vtp trunk trunk 设置成为骨干端口 mode \ 模式 trunk 相同主干线 switchport port 接口控制

数据结构课程设计_线索二叉树的生成及其遍历

数据结构课程设计 题目: 线索二叉树的生成及其遍历 学院: 班级: 学生姓名: 学生学号: 指导教师: 2012 年12月5日

课程设计任务书

摘要 针对以二叉链表作为存储结构时,只能找到结点的左、右孩子的信息,而得不到结点的前驱与后继信息,为了使这种信息只有在遍历的动态过程中才能得到。增设两个指针分别指示其前驱和后继,但会使得结构的存储密度降低;并且利用结点的空链域存放(线索链表),方便。同时为了记下遍历过程中访问结点的先后关系,附设一个指针pre始终指向刚刚访问过的结点,若指针p 指向当前访问的结点,则 pre指向它的前驱。由此得到中序遍历建立中序线索化链表的算法 本文通过建立二叉树,实现二叉树的中序线索化并实现中序线索二叉树的遍历。实现对已生成的二叉树进行中序线索化并利用中序线索实现对二叉树的遍历的效果。 关键词二叉树,中序线索二叉树,中序线索二叉树的遍历

目录 摘要 ............................................ 错误!未定义书签。第一章,需求分析................................. 错误!未定义书签。第二章,概要设计 (1) 第三章,详细设计 (2) 第四章,调试分析 (5) 第五章,用户使用说明 (5) 第六章,测试结果 (5) 第七章,绪论 (6) 第八章,附录参考文献 (7)

线索二叉树的生成及其遍历 第一章需求分析 以二叉链表作为存储结构时,只能找到结点的左、右孩子的信息,而得不到结点的前驱与后继信息,为了使这种信息只有在遍历的动态过程中才能得到。增设两个指针分别指示其前驱和后继,但会使得结构的存储密度降低;并且利用结点的空链域存放(线索链表),方便。同时为了记下遍历过程中访问结点的先后关系,附设一个指针pre始终指向刚刚访问过的结点,若指针p 指向当前访问的结点,则 pre指向它的前驱。由此得到中序遍历建立中序线索化链表的算法 本文通过建立二叉树,实现二叉树的中序线索化并实现中序线索二叉树的遍历。实现对已生成的二叉树进行中序线索化并利用中序线索实现对二叉树的遍历的效果。主要任务: 1.建立二叉树; 2.将二叉树进行中序线索化; 3.编写程序,运行并修改; 4.利用中序线索遍历二叉树 5.书写课程设计论文并将所编写的程序完善。 第二章概要设计 下面是建立中序二叉树的递归算法,其中pre为全局变量。 BiThrNodeType *pre; BiThrTree InOrderThr(BiThrTree T) { /*中序遍历二叉树T,并将其中序线索化,pre为全局变量*/ BiThrTree head; head=(BitThrNodeType *)malloc(sizeof(BiThrType));/*设申请头结点成功*/ head->ltag=0;head->rtag=1;/*建立头结点*/ head->rchild=head;/*右指针回指*/ if(!T)head->lchild=head;/*若二叉树为空,则左指针回指*/ else{head->lchild=T;pre=head; InThreading(T);/*中序遍历进行中序线索化*/ pre->rchild=head; pre->rtag=1;/*最后一个结点线索化*/ head->rchild=pre; }; return head; } void InThreading(BiThrTree p) {/*通过中序遍历进行中序线索化*/ if(p)

H3C交换机与CISCO交换机trunk设置注意事项

H3C交换机与CISCO交换机trunk设置注意事项 环境: 在一次调试H3C交换机的过程中遇到需要与CISCO交换机互联的一个要求,原CISCO设备中将所有接口分配到了VLAN 75下,然后在FastEthernet 0/24接口下配置的Trunk并且设置允许VLAN75通过。 操作: 1、system-view 2、[H3C]local-user admin 3、[H3C-luser-admin]password simple admin 4、[H3C-luser-admin]service-type telnet terminal 5、[H3C-luser-admin]authorization-attribute level 3 6、[H3C]user-interface vty 0 4 7、[H3C-ui-vty0-4]authentication-mode scheme 8、[H3C-ui-vty0-4]user privilege level 3 9、[H3C]VLAN 75 建立VLAN 75 10、[H3C-vlan75]port Ethernet 1/0/1 to Ethernet 1/0/23将接口1-23划到VLAN75 下 11、[H3C]interface ethernet 1/0/24 进入接口24 12、[H3C-Ethernet1/0/24]port link-type trunk 设置接口类型为Trunk 13、[H3C-Ethernet1/0/24]port trunk permit vlan all 设置允许所有vlan可以通过 14、 问题: 将H3C交换机的24口接入CISCO交换机的24口后,两个交换机不通。 判断: H3C交换机的24口与CISCO交换机的24口均配置为Trunk。按正常情况应该能够互通。

二叉树的随机生成及其遍历

叉树的随机生成及其遍历 张 zhaohan 10804XXXXX 2010/6/12 问题重述 利用随机函数产生50个(不大于1 00且各不相同的)随机整数,用这些整数来生成一棵二叉树,分别对二叉树 进行先根遍历,中根遍历和后根遍历并输出树中结点元素序列。 程序设计 (一) 需求分析: ?问题的定义与要求: 1 、产生50个不大于100且各不相同的随机整数 (由系统的随机函数生成并 对100取模);2、先根遍历并输出结果;3、中根遍历并输出结果;4、后根遍历并输出结果;按层次浏览二叉树结 5、点; 6、退出程序。 ?俞入:所需功能,选项为1?6。 ?输出:按照用户功能选择输出结果。 ?限制:输入的功能选择在1?6之间,否则无回应。 ?模块功能及要求: RandDif(): 生成50个随机不大于100的整数,每次生成不同随机整数。 CreateBitree(): 给数据结点生成二叉树,使每个结点的左右儿子指针指向左右儿子。 NRPreOrder(): 非递归算法的先根遍历。 inOrderTraverse(): 递归算法的中根遍历。 P ostOrderTraverseO:递归算法的后根遍历。 Welcome(): 欢迎窗口。 Menu():菜单。 Goodbye():再见窗口。 (二) 概要设计:

首先要生成二叉树,由于是对随机生成的50个数生成二叉树,故可以采取顺序存储的方式,对结点的左右儿子进行赋值。生成的二叉树是完全二叉树。 先根遍历的非递归算法: 1、根结点进栈 2、结点出栈,被访问 3、结点的右、左儿子(非空)进栈 4、反复执行2、3 ,至栈空为止。 先根遍历的算法流程图:根结点进栈( a[0]=T->boot,p=a[0] ) 访问结点printf(*p) 右儿子存在则进栈a[i]=(*p).rchild; i++; 左儿子存在则进栈a[i]=(*p).rchild; i++; 栈顶降低top--:i--;p=a[i]; 栈非空while(i>-1) 返回 中根遍历的递归算法流程图: T为空 Return; inOrderTraverse(T->lchild) Printf(T->data) inOrderTraverse(T->rchild) 返回

数据结构二叉树的创建及遍历

课程名称:数据结构实验 实验项目:二叉树的创建及遍历 姓名: 专业:计算机科学与技术 班级: 学号: 计算机科学与技术学院 20 17年11 月22 日

哈尔滨理工大学计算机科学与技术学院实验报告 实验项目名称:二叉树的建立及遍历 一、实验目的 1.熟悉掌握课本二叉树相关理论知识 2.实践与理论相结合,掌握二叉树的应用程序 3.学会二叉树的创建,遍历等其他基本操作的代码实现 二、实验内容 1.二叉树的创建代码实现 2.二叉树先序、中序、后序遍历代码实现 三、实验操作步骤 1.二叉树的建立 (1)树节点的定义 由于每个节点都由数据域和指左子树和右子树的指针,故结构体封装如下: typedef struct node { int data; struct node *left; struct node *right; }Tree,*bitree; (2)建立 采用递归的思想,先建立根再建立左子树,再建立右子树。递归截止条件子树为空,用-1代表树空 *T=(struct node *)malloc(sizeof(struct node));

(*T)->data=a; printf("%d的左节点",a); create(&(*T)->left); printf("%d的右节点",a); create(&(*T)->right); 2.三种遍历的实现 (1)先序遍历 依旧采用递归的思想,先遍历根后遍历左子树再遍历右子树。 printf("%d ",T->data); Pro(T->left); Pro(T->right); (2)中序遍历 先遍历左子树再遍历根最后遍历右子树 Mid(T->left); printf("%d ",T->data); Mid(T->right); (3)后序遍历 先遍历左子树再遍历右子树最后遍历根 Later(T->left); Later(T->right); printf("%d ",T->data); (4)按层遍历 按层遍历采用队列的思想,先将第一个节点入队然后在将其出队将其左右孩子入队。依

二叉树的建立及遍历

数据结构实验五 课程数据结构实验名称二叉树的建立及遍历第页 专业班级学号 姓名 实验日期:年月日评分 一、实验目的 1.学会实现二叉树结点结构和对二叉树的基本操作。 2.掌握对二叉树每种操作的具体实现,学会利用递归方法编写对二叉树这种递归数据结构进行处理的算法。 二、实验要求 1.认真阅读和掌握和本实验相关的教材内容。 2.编写完整程序完成下面的实验内容并上机运行。 3.整理并上交实验报告。 三、实验内容 1.编写程序任意输入二叉树的结点个数和结点值,构造一棵二叉树,采用三种递归遍历算法(前序、中序、后序)对这棵二叉树进行遍历并计算出二叉树的高度。 2 .编写程序生成下面所示的二叉树,并采用先序遍历的非递归算法对此二叉 树进行遍历。 四、实验步骤 (描述实验步骤及中间的结果或现象。在实验中做了什么事情,怎么做的,发生的现象和中间结果) 第一题 #include "stdafx.h" #include"iostream.h" #include"stdlib.h"

#include"stdio.h" #includelchild); int n=depth(T->rchild); ?return (m>n?m:n)+1; } } //先序,中序建树 structnode*create(char *pre,char *ord,int n) { ?struct node*T; intm; T=NULL; ?if(n<=0) ?{ ?returnNULL; } ?else ?{ ?m=0; ??T=new(struct node); T->data=*pre; ?T->lchild=T->rchild=NULL; ?while(ord[m]!=*pre) ?m++; T->lchild=create(pre+1,ord,m); ?T->rchild=create(pre+m+1,ord+m+1,n-m-1);

H3C与思科的MSTP对接

H3C和Cisco的MSTP对接 1 各自支持的STP协议种类 1.1 H3C支持的STP协议 H3C支持标准的STP、RSTP和MSTP,其中MSTP在不启用多实例时基本等同与RSTP。 1.2 Cisco支持的STP协议 Cisco支持PVST、PVST+、MISTP和MSTP。 2 对接测试 H3C设备可以与Cisco的PVST+和MSTP进行对接,其它几个协议不能对接。但是由于Cisco的MSTP实现不规范,S8500上需要特别的配置,说明如下: 按照协议规定,stp region-configuration的配置通过MD5摘要算法得到一个值,交换机之间通过比较这个值来确定是否属于同一个域。 如果stp region-configuration的配置完全一致,则结果必然一致,属于同一个域。 由于cisco的MD5算法与协议规定的不一致,导致相同的stp region-configuration配置与华为的结果不一致。 可以通过配置下面2条命令分别在全局和与cisco相连接的端口下来达到mstp的互通。 [S1]stp config-digest-snooping [S1]int e8/1/1 [S1-Ethernet8/1/1]stp config-digest-snooping 由于上述命令S8500的早期版本不支持,开局时请使用126×系列的版本。 3 对接测试结果 S8500的测试人员专门针对这个问题进行过专项测试,S8500与6509使用MSTP与VRRP 实现双机热备份是可以的。但是由于下挂的H3C二层交换机不一定支持stp config-digest-snooping命令,所以如果要使用MSTP多实例来进行负荷分担的话下面的H3C二

数据结构实验报告-二叉树的实现与遍历

《数据结构》第六次实验报告 学生姓名 学生班级 学生学号 指导老师

一、实验内容 1) 采用二叉树链表作为存储结构,完成二叉树的建立,先序、中序和后序 以及按层次遍历的操作,求所有叶子及结点总数的操作。 2) 输出树的深度,最大元,最小元。 二、需求分析 遍历二叉树首先有三种方法,即先序遍历,中序遍历和后序遍历。 递归方法比较简单,首先获得结点指针如果指针不为空,且有左子,从左子递归到下一层,如果没有左子,从右子递归到下一层,如果指针为空,则结束一层递归调用。直到递归全部结束。 下面重点来讲述非递归方法: 首先介绍先序遍历: 先序遍历的顺序是根左右,也就是说先访问根结点然后访问其左子再然后访问其右子。具体算法实现如下:如果结点的指针不为空,结点指针入栈,输出相应结点的数据,同时指针指向其左子,如果结点的指针为空,表示左子树访问结束,栈顶结点指针出栈,指针指向其右子,对其右子树进行访问,如此循环,直至结点指针和栈均为空时,遍历结束。 再次介绍中序遍历: 中序遍历的顺序是左根右,中序遍历和先序遍历思想差不多,只是打印顺序稍有变化。具体实现算法如下:如果结点指针不为空,结点入栈,指针指向其左子,如果指针为空,表示左子树访问完成,则栈顶结点指针出栈,并输出相应结点的数据,同时指针指向其右子,对其右子树进行访问。如此循环直至结点指针和栈均为空,遍历结束。 最后介绍后序遍历: 后序遍历的顺序是左右根,后序遍历是比较难的一种,首先需要建立两个栈,一个用来存放结点的指针,另一个存放标志位,也是首先访问根结点,如果结点的指针不为空,根结点入栈,与之对应的标志位也随之入标志位栈,并赋值0,表示该结点的右子还没有访问,指针指向该结点的左子,如果结点指针为空,表示左子访问完成,父结点出栈,与之对应的标志位也随之出栈,如果相应的标志位值为0,表示右子树还没有访问,指针指向其右子,父结点再次入栈,与之对应的标志位也入栈,但要给标志位赋值为1,表示右子访问过。如果相应的标志位值为1,表示右子树已经访问完成,此时要输出相应结点的数据,同时将结点指针赋值为空,如此循环直至结点指针和栈均为空,遍历结束。 三、详细设计 源代码:

H3C S5120对接Cisco IPPhone配置例

俊茂微Voice VLAN配置例 1、组网图 2、应用需求 我司S5120-SI设备按上图组网,S5120-SI交换机下面连接Cisco IPPhone,且有IPPhone串联用户PC,既满足用户IPPhone接入,又满足用户PC的接入。 3、配置步骤: a)创建Date、Voice VLAN vlan 190 description date_vlan vlan 212 description voice_vlan b)全局启动DHCP-Snooping、Voice VLAN Security功能 dhcp-snooping undo voice vlan security enable c)删除默认Voice VLAN OUI地址 undo voice vlan mac-address 0001-e300-0000 undo voice vlan mac-address 0003-6b00-0000 undo voice vlan mac-address 0004-0d00-0000 undo voice vlan mac-address 0060-b900-0000 undo voice vlan mac-address 00d0-1e00-0000 undo voice vlan mac-address 00e0-7500-0000 undo voice vlan mac-address 00e0-bb00-0000 d)全局启用LLDP功能(兼容CISCO CDP) lldp enable lldp compliance cdp e)配置端口Voice VLAN、LLDP、QOS功能(trunk与hybrid模式)interface GigabitEthernet1/0/1 port link-type trunk

7.4.1无向图的连通分量和生成树

7.4.1无向图的连通分量和生成树。

void DFSForest(Graph G,CSTree &T) //建立无向图G的深度优先生成森林的 //(最左)孩子(右)兄弟链表T。 { T=NULL; for(v=0;vnextSibling=p; //是其他生成树的根(前一棵的根的“兄弟”)。 q=p; //q指示当前生成树的根。 DFSTree(G,v,p); //建立以p为根的生成树。 }// if(!visited[v]) }// for(v=0;vlchild=p;first=FALSE; }// if(first) else //w是v的其它未被访问的邻接顶点 { //是上一邻接顶点的右兄弟节点。 q->nextsibling=p; }// else q=p; DFSTree(G,w,q); //从第w个顶点出发深度优先遍历图G,建立子生成树q。 }// if(!visited[w]) }// for(w=FirstAdjVex(G,v); }// DFSTree

C++二叉树的创建与遍历实验报告

二叉树的创建与遍历 一、实验目的 1.学会实现二叉树结点结构和对二叉树的基本操作。 2.掌握对二叉树每种操作的具体实现,学会利用递归和非递归方法编写对二叉树这种递归数据结构进行处理的算法。 二、实验要求 1.认真阅读和掌握和本实验相关的教材内容。 2.编写完整程序完成下面的实验内容并上机运行。 3.整理并上交实验报告。 三、实验内容 1.编写程序任意输入二叉树的结点个数和结点值,构造一棵二叉树,采用三种递归和非递归遍历算法(前序、中序、后序)对这棵二叉树进行遍历。 四、实验步骤 源程序代码1 #include #include using namespace std; template struct BinTreeNode //二叉树结点类定义 { T data; //数据域 BinTreeNode *leftChild,*rightChild; //左子女、右子女域 BinTreeNode(T x=T(),BinTreeNode* l =NULL,BinTreeNode* r = NULL ) :data(x),leftChild(l),rightChild(r){} //可选择参数的默认构造函数 }; //------------------------------------------------------------------------- template void PreOrder_2(BinTreeNode *p) //非递归前序遍历 { stack * > S;

Cisco和H3C对接MSTP

Ii3C S5830 Cisco 2960 C i s c o 2 9 6 H3C S5830: stp en able stp mode mstp stp regi on-con figuratio n regi on-n ame duowa n in sta nee 10 vlan 11 to 65 revisi on-level 2 active regi on-con figurati on stp in sta nee 10 root primary stp con fig-digest-s nooping

vlan 10 vlan 20 vlan 30

in terface GigabitEthernet1/0/1 port lin k-mode bridge port lin k-type trunk port trunk permit vlan all stp con fig-digest-s nooping # in terface GigabitEthernet1/0/2 port lin k-mode bridge port lin k-type trunk port trunk permit vlan all stp con fig-digest-s nooping display stp in sta nee 10 Cisco 2960: vlan 10 vlan 20 vlan 30 in terface FastEthernet0/1 switchport mode trunk in terface FastEthernetO/13 switchport mode trunk spa nnin g-tree mode mst

h3c与Cisco、Juniper E1T1互通总结

华为三康技术有限公司Huawei-3Com Technologies Co., Ltd. 文档编号 Document ID 密级 Confidentiality level 内部公开 文档状态 Document Status 共13页Total 13 pages Draft 1.00 与Cisco-Juiper E1/T1互通总结 拟制Prepared by 吴爱慧/05531 Date 日期 2010-8-30 评审人Reviewed by Date 日期 批准Approved by Date 日期 华为三康技术有限公司 Huawei-3Com TechnologieS Co., Ltd. 版权所有侵权必究 All rightS reServed

ReviSion Record 修订记录 Date 日期ReviSion VerSion 修订 版本 Sec No. 修改 章节 Change DeScription 修改描述 Author 作者 2010-8-30 1.00 Initial 初稿完成吴爱慧

目录 1E1/T1概述 (5) 2E1/T1应用方式 (6) 2.1 E1应用方式 (6) 2.2 T1的应用方式 (6) 3E1/T1线缆介绍 (7) 4与Cisco/Juniper E1命令对比 (8) 5与Cisco E1互通典型配置 (9) 5.1 成帧方式 (9) 5.2 非成帧方式 (10) 6与Juniper E1链路互通典型配置 (10) 6.1 成帧方式 (10) 6.2 非成帧方式 (11) 7常见告警及故障排查 (12) 7.1 常见的物理层错误信息 (12) 7.2 常见告警信号 (12) 7.3 常见的链路层故障排查 (13) 8附件: (13)

二叉树的随机生成及其遍历

二叉树的随机生成及其遍历 张zhaohan 10804XXXXX 2010/6/12 问题重述 利用随机函数产生50个(不大于100且各不相同的)随机整数,用这些整数来生成一棵二叉树,分别对二叉树进行先根遍历,中根遍历和后根遍历并输出树中结点元素序列。 程序设计 (一)需求分析: ●问题的定义与要求:1、产生50个不大于100且各不相同的随机整数(由系统的随机函数生成并对100取模);2、先根遍历并输出结果;3、中根遍历并输出结果;4、后根遍历并输出结果;5、按层次浏览二叉树结点;6、退出程序。 ●输入:所需功能,选项为1~6。 ●输出:按照用户功能选择输出结果。 ●限制:输入的功能选择在1~6之间,否则无回应。 ●模块功能及要求: RandDif():生成50个随机不大于100的整数,每次生成不同随机整数。 CreateBitree():给数据结点生成二叉树,使每个结点的左右儿子指针指向左右儿子。NRPreOrder():非递归算法的先根遍历。 inOrderTraverse():递归算法的中根遍历。 PostOrderTraverse():递归算法的后根遍历。 Welcome():欢迎窗口。 Menu():菜单。 Goodbye():再见窗口。 (二)概要设计:

首先要生成二叉树,由于是对随机生成的50个数生成二叉树,故可以采取顺序存储的方式,对结点的左右儿子进行赋值。生成的二叉树是完全二叉树。 先根遍历的非递归算法: 1、根结点进栈 2、结点出栈,被访问 3、结点的右、左儿子(非空)进栈 4、反复执行2、3 ,至栈空为止。 先根遍历的算法流程图: 根结点进栈(a[0]=T->boot,p=a[0]) 访问结点printf(*p) 右儿子存在则进栈a[i]=(*p).rchild; i++; 左儿子存在则进栈a[i]=(*p).rchild; i++; 栈顶降低top--:i--;p=a[i]; 栈非空while(i>-1) 返回 中根遍历的递归算法流程图: T为空 Y N Return; inOrderTraverse(T->lchild) Printf(T->data) inOrderTraverse(T->rchild)

CISCO与H3CSTP对接检验测试

CISCO 与H3C STP对接测试 实验拓扑一: H3C 3600-1配置: stp instance 1 priority 4096 stp instance 2 priority 8192

stp enable stp region-configuration region-name S revision-level 1 instance 1 vlan 110 120 instance 2 vlan 130 140 active region-configuration stp config-digest-snooping H3C 3600-2配置: stp instance 1 priority 8192 stp instance 2 priority 4096 stp enable stp region-configuration region-name S instance 1 vlan 110 120 instance 2 vlan 130 140 active region-configuration stp config-digest-snooping CISCO 3560配置: spanning-tree mode mst spanning-tree extend system-id ! spanning-tree mst configuration name S revision 1 instance 1 vlan 110, 120 instance 2 vlan 130, 140 SPANNING-TREE 状态: H3C-3600-1: dis stp bri MSTID Port Role STP State Protection 0 Ethernet1/0/1 ROOT FORW ARDING NONE 0 Ethernet1/0/2 DESI FORWARDING NONE 1 Ethernet1/0/1 DESI FORWARDING NONE 1 Ethernet1/0/ 2 DESI FORWARDING NONE 2 Ethernet1/0/1 ROOT FORWARDING NONE 2 Ethernet1/0/2 DESI FORWARDING NONE (*) means port in aggregation group dis stp ins 1 -------[MSTI 1 Global Info]------- MSTI Bridge ID :4097.000f-e268-4df2 MSTI RegRoot/IRPC :4097.000f-e268-4df2 / 0 MSTI RootPortId :0.0 Master Bridge :32768.000f-e268-4d14 Cost to Master :200 TC or TCN received :330

相关主题
文本预览
相关文档 最新文档