首页 > 代码库 > 阿里巴巴笔试题--二叉树(知识复习与整理)

阿里巴巴笔试题--二叉树(知识复习与整理)

写一个函数,输入一个二叉树,树中每个节点存放了一个整数值,函数返回这棵二叉树中相差最大的两个节点间的差值绝对值。请注意程序效率。

完整的二叉树建立,先序遍历,中序遍历,后序遍历,统计叶子结点个数,输出叶子结点,输出结点最大值,最小值,以及最大值与最小值的差。

#include<stdio.h>#include<stdlib.h>#include<iostream>using namespace std;typedef char DataType_char;typedef int DataType_int;typedef struct Node{	DataType_int data;	struct Node *LChild;	struct Node *RChild;}BiTNode,*BiTree;void Visit(DataType_int a)//输出各节点{	cout<<a<<" ";}//先序建立二叉树BiTree InitTree(){	DataType_char ch;	BiTree T;	cin>>ch;	if(ch=='.') T=NULL;//空结点用'.'代替	else	{		T=(BiTree)malloc(sizeof(BiTNode));		T->data=http://www.mamicode.com/ch-'0';>




阿里巴巴笔试题--二叉树(知识复习与整理)