顺序二叉树的建立及删除某个节点后仍然保持顺序二叉树特性..
2021-11-21 14:01:48 2KB 顺序二叉树 删除节点
1
实验三 二叉树的建立和层次遍历 一 实验目的 掌握二叉树的原理、表示及实现方法。 掌握二叉树的基本操作,二叉树的建立、遍历方法。 二 实验要求 认真设计本实验的程序,上机调试运行本程序。 保存或打印出程序的运行结果,记录程序调试过程中出现的问题,对问题加以分析。 三 实验内容 按先序遍历序列建立链式存储结构的二叉树。 对该二叉树按层次进行遍历,并输出结果。 选作实验:对二叉树按中序或后序进行遍历 实验时间:第10周
2021-11-16 20:42:50 1KB 数据结构 二叉树
1
数据结构关于二叉树的建立遍历以及应用二叉树进行编解码 实验要求 必做部分 1. 小明会按照前序的方式输入一棵二叉树。例如,输入$ACG##H##D##BE#I##F##的话,代表了下面这棵树: 2. 请分别按照前序、中序、后序输出这棵树。 选做部分 背景 在影视剧中,我们经常会看到二战期间情报人员使用电报哒哒哒地发送信息,发送电报所使用的编码叫做摩尔斯电码(或者叫做摩斯密码)。甚至在现代,SOS仍然是国际通用的求救信号之一,其“三短、三长、三短”同样是摩斯密码的编码方式。 摩斯密码使用若干个“点”和“划”来表示一个字母,字母和字母之间使用短暂的停顿来表示。例如,一种常见的编码方式为: 字母 摩斯密码 字母 摩斯密码 A .- E . B -... F ..-. C -.-. G --. D -.. H .... 实际上,一个摩斯密码本可以使用一棵二叉树来存储: 上图表示,从根节点start开始,遇到一个点(Dot)就访问它的左子树节点,遇到一个划(Dash)就访问它的右子树节点。例如,三个点...代表了S,三个划---代表了O。所以SOS的摩斯密码是... --- ...(中间用空格隔开,表示短暂的停顿)。再比如,爱疯手机有一种来电铃声的节奏为“哇哇哇 哇-哇- 哇哇哇”,这其实表示的是…… 现在,小明想在课上偷偷跟你传纸条,但又不想被其他同学看到内容。因此他跟你约定,每次给你传纸条时都使用摩斯密码来编写。至于密码本,当然不能使用国际通用的,他会在课前告诉你密码本的内容。然而小明发现,每次写纸条、读纸条都不是很方便,所以他想让你做个程序来自动编码/解码你们的摩斯密码。 题目要求 首先,小明输入的那棵二叉树,代表了你们在这堂课上要使用的摩斯密码本。例如,输入$ACG##H##D##BE#I##F##的话,代表了下面这棵树: 第一个字母$是什么并不重要,因为它只是代表了根节点,而根节点在我们的摩斯电码中并不代表一个字符,仅仅代表“start”。 读入密码本后,请记得按照前序、中序、后序输出这棵树。 然后,小明会输入一个数,代表接下来输入的是明文还是摩斯电码。输入0表示接下来他会输入明文,输入1表示接下来输入的是摩斯电码,输入-1程序退出。 1. 如果输入的是0,代表接下来要输入的是明文。程序接受一个字符串,根据字符串中每一个字母输出对应的摩斯电码,用空格隔开。例如如果小明输入“BED”,则程序应该输出“-空格-.空格.-”。如果遇到密码本中没有的字符,则输出“输入有误”。 2. 如果输入的是1,则表示接下来要输入摩斯电码。小明首先会输入一个数字N,代表有几个电码的输入,例如输入4代表之后会输入4个电码(即这个单词有四个字母)。随后输入空格分割的电码,例如, .. . -- -. 程序需要根据摩斯电码解读出明文单词并输出,例如上面的电码表示“CAFE”。如果遇到密码本中没有的编码,则输出“输入有误”。 输入输出样例 必做部分: 请输入二叉树: $ACG##H##D##BE#I##F## 前序遍历:$ACGHDBEIF 中序遍历:GCHAD$EIBF 后序遍历:GHCDAIEFB$ 选做部分: 请选择(0为明文,1为电码,-1退出):0 请输入明文:BED 摩斯电码为:- -. .- 请选择(0为明文,1为电码,-1退出):1 请输入电码个数:4 请输入电码:.. . -- -. 明文为:CAFE 请选择(0为明文,1为电码,-1退出):-1 // 程序结束
2021-11-05 16:44:40 8KB C++ BTree
1
MFC实现,用图形化界面显示二叉树,对二叉树进行前中后序遍历以及线索化,并输出未线索化和线索化之后按前中后序遍历的结果
2021-10-31 18:00:49 40KB 二叉树的建立 遍历二叉树
1
这个汇编程序是利用数组和递归实现二叉树的建立与遍历,带注释的,下面是部分代码,与大家分享了 .model small .stack 64 .data Array db 32 dup(0,0,0) MSG1 db 0ah,0dh,'$' MSG2 db "Please input the root node of the binary: ",'$' MSG3 db "'s leftchild is(no leftchild,press ENTER):",'$' MSG4 db "'s rightchild is(no rightchild,press ENTER):",'$' MSG5 db "Preorder is:",'$' ;先序结果 MSG6 db 0ah,0dh,"Inorder is:",'$' ;中序结果 MSG7 db 0ah,0dh,"Postorder is:",'$' ;后序结果 ;主过程======================================================== .code main proc far mov ax,@data mov ds,ax ;初始化段寄存器 lea si,Array ;将数组的首地址放进索引寄存器SI sub cx,cx mov ah,09h lea dx,MSG2 int 21h ;提示输入根结点 mov ah,01h int 21h cmp al,0dh je exit call storage ;调用存储部分 call preorder ;先序遍历 lea dx,MSG6 call prepare call inorder ;中序遍历 lea dx,MSG7 call prepare call postorder ;后序遍历 exit: mov ah,4ch int 21h main endp
1
这是一个关于二叉树用数组建立的代码。自己写的,不错的,欢迎下载。
2021-10-26 08:49:15 930B 数组
1
c语言,二叉树的建立和遍历操作。数据结构Bitree
2021-10-24 21:24:40 216KB Bitree 二叉树
1
树和二叉树的建立和遍历-数据结构试验报告.doc
2021-08-28 09:14:07 454KB 数据结构 实验报告
二叉树的建立和遍历操作.docx
2021-07-24 10:02:18 278KB 数据结构
1)理解二叉树的基本结构 2)编程实现二叉树的构造、前序、中序、后序、层序遍历等基本功能
2021-07-17 11:04:01 249KB 二叉树 前序遍历 中序遍历 后序遍历