// BTree.cpp : 定义控制台应用程序的入口点。 /作者:成晓旭时间:2001年7月2日(9:00-14:00)内容:完成二叉树的创建、前序遍历、中序遍历、后序遍历时间:2001年7月2日(14:00-16:00)内容:完成二叉树的叶子节点访问,交换左、右孩子/ #include "stdafx.h" #include "stdlib.h" #define MAX_NODE 100 #define NODE_COUNT1 8 #define NODE_COUNT2 15 int TreeValue0[NODE_COUNT1][2] = {{'0',0},{'D',1},{'B',2},{'F',3},{'A',4},{'C',5},{'E',6},{'G',7}}; int TreeValue1[NODE_COUNT1][2] = {{'0',0},{'A',1},{'B',2},{'C',3},{'D',4},{'E',5},{'F',6},{'G',7}}; int TreeValue2[NODE_COUNT2][2] = {{'0',0},{'A',1},{'B',2},{'C',3},{'D',4},{'E',5},{'F',6},{'G',7},{'H',8},{'I',9},{'J',10},{'K',11},{'L',12},{'M',13},{'N',14}}; struct BTree { int data; int order; BTree lchild; BTree rchild; }; void Swap(int p1,int p2) { int t; t = p1; p1 = p2; p2 = t; } / function CreateBTree()功能:创建一颗二叉树,并返回一个指向其根的指针/ BTree CreateBTree(int data[][2],int n) { BTree Addr[MAX_NODE]; BTree p, head; int nodeorder,//节点序号noderoot, //节点的双亲i; if(n>MAX_NODE) { printf(
{