计算二叉树左结点数
#include <iostream>
using namespace std;
int j;
class BiTreeNode
{
private:
BiTreeNode *leftChild; //左子树指针
BiTreeNode *rightChild; //右子树指针
public:
char data; //数据域
//构造函数和析构函数
BiTreeNode():leftChild(NULL), rightChild(NULL){}
BiTreeNode(char item, BiTreeNode *left = NULL,
BiTreeNode *right = NULL):
data(item), leftChild(left), rightChild(right){}
~BiTreeNode(){}
BiTreeNode * &Left;(void) //注意返回值类型为指针的引用类型
{return leftChild;}
BiTreeNode * &Right;(void) //注意返回值类型为指针的引用类型
{return rightChild;}
};
class BiTree
{
private:
BiTreeNode *root; //根结点指针
int i;
void Leftjd(BiTreeNode * &t,int x); //计算左结点
void CreateBiTree(BiTreeNode * &T,const char strTree[]);
public:
//构造函数和析构函数
BiTree(void):root(NULL),i(0){}; //构造函数
~BiTree(void){}; //析构函数
//构造二叉树
void MakeTree(const char item, BiTree &left;, BiTree &right;); //构造二叉
树
void MakeTree(const char strTree[]); //构造二叉树,利用先序遍历结果建树
void Leftjd();
};
二叉排序树查找
第一行输入一个整数t,表示有t组测试数据
第二行起每三行表示一组数据
第1行为输入序列的元素个数:n
第2行为输入的序列:s1 s2 … sn
第3行为输入:sKey iKey dKey
第一行输出中序序列
第二行输出最小值、最大值
第三行输出查找sKey的结果
第四行输出查找后的中序序列
第五行输出插入iKey后的中序序列
第六行输出查找iKey的结果
第七行输出删除dKey后的中序序列
第八行输出查找dKey的结果
Sample Input
1
12
66 45 78 42 55 32 39 68 95 86 102 29
55 63 78
Sample Output
29 32 39 42 45 55 66 68 78 86 95 102
29 102
1 3 2
29 32 39 42 45 55 66 68 78 86 95 102
29 32 39 42 45 55 63 66 68 78 86 95 102
1 4 4
29 32 39 42 45 55 63 66 68 86 95 102
0 5 13
折半查找算法
C++结构折半查找算法,输入数据先做冒泡排序,在进行折半查找
二叉树建立,先序中序后续遍历
#include <iostream>
using namespace std;
class BiTreeNode
{
private:
BiTreeNode *leftChild; //左子树指针
BiTreeNode *rightChild; //右子树指针
public:
char data; //数据域
//构造函数和析构函数
BiTreeNode():leftChild(NULL), rightChild(NULL){}
BiTreeNode(char item, BiTreeNode *left = NULL,
BiTreeNode *right = NULL):
data(item), leftChild(left), rightChild(right){}
~BiTreeNode(){}
BiTreeNode * &Left;(void) //注意返回值类型为指针的引用类型
{return leftChild;}
BiTreeNode * &Right;(void) //注意返回值类型为指针的引用类型
{return rightChild;}
};
class BiTree
{
private:
BiTreeNode *root; //根结点指针
int i;
void Destroy(BiTreeNode * &t);
void PreOrder(BiTreeNode * &t);
void InOrder(BiTreeNode * &t);
void PostOrder(BiTreeNode * &t);
void CreateBiTree(BiTreeNode * &T,const char strTree[]);
public:
//构造函数和析构函数
BiTree(void):root(NULL),i(0){}; //构造函数
~BiTree(void){}; //析构函数
//构造二叉树
void MakeTree(const char item, BiTree &left;, BiTree &right;); //构造二叉树
void MakeTree(const char strTree[]); //构造二叉树,利用先序遍历结果建树
void PreOrder(); //前序遍历
void InOrder(); //中序遍历
void PostOrder(); //后序遍历
};
unity3d汉化手册
汉化解释了unity3d里面的所有类,对其作出翻译解释,对初学者挺有帮助的。