- 浏览: 716617 次
- 性别:
- 来自: 嘉兴
文章分类
- 全部博客 (386)
- Struts1.1 (2)
- Database (18)
- Core Java (15)
- Log4j (4)
- SSH (0)
- Dao (1)
- Architecture Design (1)
- References (2)
- Eclipse&MyEclipse (10)
- Hibernate (7)
- Spring (8)
- JavaMail (1)
- Data Structure And Algorithm (48)
- Struts 2 (2)
- SSI (1)
- SSL (2)
- JSTL (1)
- EJB3 (2)
- NET (2)
- XML (2)
- Components (2)
- Ant (3)
- Multi Thread (1)
- Performance Monitoring (1)
- Web Server (17)
- Oracle (1)
- jQuery (8)
- Regular Expression (1)
- Weblogic (1)
- Exception (1)
- Security (2)
- File Manipulation (1)
- JavaScript (12)
- JVM (2)
- HTML&DIV&CSS (4)
- Android (10)
- Beyond GFW (0)
- Business (0)
- SVN (6)
- 虚拟主机 (1)
- Virtual Host (3)
- My mentality (5)
- OS (15)
- ISPMP (3)
- Magento (5)
- Jsoup&HttpClient (7)
- LINUX (9)
- Database Design (0)
- Power Designer (1)
- TaobaoOpenPlatform (2)
- C/C++ (3)
- Maven (11)
- Quartz (1)
- Load Balance (1)
- Zabbix (4)
- Product&Business (1)
- Pay Interface (1)
- Tomcat (2)
- Redis (1)
- 集群 (1)
- Session (1)
- 共享Session (1)
- Jedis (1)
- jenkins (1)
- 持续集成 (1)
- Web前端 (1)
最新评论
-
aqq331325797:
特意注册账号上来说一句。牛逼!
swagger2.2.2 与 spring cloud feign冲突 -
KitGavinx:
跨顶级域名怎么保持sessionid一致?
Tomcat7集群共享Session 基于redis进行统一管理 -
jaychang:
dujianqiao 写道HI ,能否给一个完整的demo 啊 ...
淘宝订单同步方案 - 丢单终结者 -
GGGGeek:
找了一会儿,感觉mybatis应该没有这种操作,直到发现博主的 ...
mybatis collection list string -
dujianqiao:
HI ,能否给一个完整的demo 啊 ?
淘宝订单同步方案 - 丢单终结者
#include<iostream> using namespace std; typedef struct BiTreeNode{ char data; BiTreeNode *lChild; BiTreeNode *rChild; }BiTreeNode; int leafCount; //递归建立二叉树 void InitialBiTree(BiTreeNode *&node) { char data; cout<<"请输入数据,输入#结束"<<endl; cin>>data; if(data!='#') { node=(BiTreeNode*)malloc(sizeof(BiTreeNode)); if(node==NULL)return; node->data=data; InitialBiTree(node->lChild); InitialBiTree(node->rChild); } else { node=NULL; } } //先序遍历 void TransFirstBiTree(BiTreeNode *&root)//注意使用*&root,^-^搞得有点郁闷反正就是这样root才可以保住 { if(root==NULL)return; else { cout<<root->data<<" "; TransFirstBiTree(root->lChild); TransFirstBiTree(root->rChild); } } //叶结点基数 void CountLeafNode(BiTreeNode *&root) { if(root!=NULL) { if(root->lChild==NULL&&root->rChild==NULL) leafCount++; CountLeafNode(root->lChild); CountLeafNode(root->rChild); } else { return ; } } //递归求二叉树的深度,max=hl>hr?hl:hr;max+=1;(递归定义) int PostTreeDepth(BiTreeNode *&root) { int hl,hr,max; if(root!=NULL) { hl=PostTreeDepth(root->lChild); hr=PostTreeDepth(root->rChild); max=hl>hr?hl:hr; return (max+1); } else return 0; } int main() { char cmd; do{ leafCount=0; BiTreeNode *root=NULL; InitialBiTree(root); cout<<"先序遍历\n"; TransFirstBiTree(root); cout<<"\n"; cout<<"\n";CountLeafNode(root); cout<<"叶结点数目为\n"; cout<<leafCount<<endl; cout<<"树的深度为\n"; cout<<PostTreeDepth(root)<<endl; cout<<"继续吗?y or n\n"; cin>>cmd; }while(cmd=='y'); return 0; }
发表评论
-
【排序算法系列】希尔排序
2015-12-05 16:14 803希尔排序的概述: a[0]...a[n-1 ... -
归并排序
2015-06-20 15:28 854public class MergeSort { pub ... -
插入排序
2015-06-20 15:27 452/** * 插入排序1 容易理解 * * ... -
有序线性链表归并
2013-10-05 11:30 1506#include<stdio.h> #incl ... -
Trie树 应用 Phone List
2012-06-15 11:21 1142Phone List 时间限 ... -
Trie树 单词查找树 键树(JAVA版附分析说明)
2012-06-13 10:27 5114来源于英文“retrieval”. ... -
Trie树 单词查找树 键树
2012-06-12 08:59 1115转自:http://zh.wik ... -
数字金额转中文大写金额
2010-11-26 15:09 1395/** * 用来将数字金额转化成中文大写的金额 ... -
汉诺塔递归算法
2010-11-25 08:17 1311import java.util.Scanner; /* ... -
约瑟夫出圈
2010-11-24 20:45 1068#include<iostream> #incl ... -
SmartHashSet只是为了解释HashSet的原理
2010-07-26 11:11 1328写该类的目的只是为了 ... -
二叉树中序遍历非递归算法
2010-06-29 23:17 1689#include<iostream> usi ... -
二叉树的创建
2010-06-29 23:15 1095#include<iostream> usi ... -
哈弗曼树建立与哈弗曼编码
2010-06-29 23:12 1204#include<iostream> #de ... -
二叉排序树转双向链表(要求无任何新增节点)
2010-06-29 23:07 2457题目:输入一棵二元查找树,将该二元查找树转换成一个排序的双 ... -
线索二叉树中插入结点
2010-06-29 23:05 1845#include<iostream> usi ... -
二叉排序树的递归与非递归查找
2010-06-29 22:58 2254#include<iostream> usi ... -
二叉树中序线索化及查找某一结点的前驱,后继结点
2010-06-29 22:54 2640#include<iostream> usi ... -
十字链表定义创建查找
2010-06-29 22:44 1281#include<iostream> #defi ... -
稀疏矩阵转置
2010-06-29 22:39 1598#include<iostream> #defi ...
相关推荐
本文主要通过python以非递归形式实现二叉树构造、前序遍历,中序遍历,后序遍历,层次遍历以及求二叉树的深度及叶子结点数。其他非递归形式的遍历,想必大多人应该都很清楚,就不再声明。如果你用C或者C++或者其他...
定义二叉树的存储结构,采用非递归算法实现二叉树的二叉树的先序、中序、后序和按层遍历。并实现求二叉树的深度、求总结点数、求叶子结点、查找某个结点等操作(可以采用递归)。
//实现二叉树叶子结点数的求值 Status DeleteBST(BSTree &T,ElemType e); //实现树的节点的删除 int TreeHeight(BSTree T); //实现树的高度的求值 int Max(int a,int b); //实现两个数中求最大值 Position ...
二叉树的建立,遍历算法(递归与非递归,基于对列或堆栈)统计二叉树中叶子结点的个数,统计二叉树中结点的总数,求二叉树的深度(后序遍历),求二叉树的宽度(具有结点数最多的层上的结点数,已知二叉树中序遍历和...
实现如下二叉排序树算法: (1) 插入新结点 (2) 前序、中序、后序遍历二叉树 (3) 中序遍历的非递归算法 (4) 层次遍历二叉树 (5) 在二叉树中查找给定关键字(函数返回值为成功1,失败0) ...(8) 叶子结点数
求结点数,非递归中序遍历 DestoryBSTree(BSTree *T) 后序遍历销毁平衡二叉排序树T R_Rotate(BSTree *p) 对以*p为根的平衡二叉排序树作右旋处理,处理之后p指向新的树根结点 即旋转处理之前的左子树的根结点 L_...
二叉树的深度为根节点到最远叶子节点的最长路径上的节 点数。 二叉树的最大深度为左右子树的最大深度+1 首先使用递归方法求解。 class TreeNode: def __init__(self, x): self.val = x self.left = None ...
二叉树的二叉链表存储结构 先中后遍历 深度 叶子结点数 递归建树
二叉树结点数、叶子数、深度、三种遍历(递归和非递归形式),层次遍历等等内容的实现!!!
/*用函数实现如下二叉排序树算法: (1) 插入新结点 (2) 前序、中序、后序遍历二叉树 (3) 中序遍历的非递归算法 (4) 层次遍历二叉树 (5) 在二叉树中查找给定关键字(函数返回值为成功1...(8) 叶子结点数
5.在一棵二叉树中,度为1的结点有40个,总的结点数为99,则二叉树中叶子结点数共有 (10) 。 6.在一棵m阶B-树中,若在某结点中插入一个新关键字而引起该结点分裂时,则左边结点有 (11) 个关键字;右边结点的关键...
2、通过二叉树遍历操作了解递归的本质和方法; 内容及步骤: 1、 试建立一个二叉搜索树,并实现以下成员函数: a. 默认构造函数和带数据域、左子树指针、右子树指针的构造函数; b. 按照二叉搜索树...
在满二叉树中,每一层上的结点数都达到最大值,即在满二叉树的第k层上有2k-1个结点,且深度为m的满二叉树有2m-1个结点。 完全二叉树是指这样的二叉树:除最后一层外,每一层上的结点数均达到最大值;在最后一层上只...
(13) 设一棵完全二叉树共有699个结点,则在该二叉树中的叶子结点数为(B) 注:利用公式n=n0+n1+n2、n0=n2+1和完全二叉数的特点可求出 A. 349 B. 350 C. 255 D. 351 (14) 结构化程序设计主要强调的是(B) A.程序的规模 ...