请实现两棵树是否相等的比较,相等返回,否则返回其它值,并说明算法复杂度
来源:互联网 发布:淘宝举报卖家有用吗 编辑:程序博客网 时间:2024/05/17 15:39
数据结构为:
typedef struct __TreeNode {
char c;
TreeNode *leftchild;
TreeNode *rightchild;
} TreeNode;
函数接口为:int CompTree(TreeNode* tree1, TreeNode* tree2);
typedef struct __TreeNode {
char c;
TreeNode *leftchild;
TreeNode *rightchild;
} TreeNode;
函数接口为:int CompTree(TreeNode* tree1, TreeNode* tree2);
注:A、B两棵树相等当且仅当RootA->c==RootB->c,而且A和B的左右子树对应相等或者左右互换后相等。
#include "stdio.h"#include<malloc.h>typedef struct TreeNode{char c;TreeNode *leftChild;TreeNode *rightChild;}TreeNode;int compTree(TreeNode *tree1, TreeNode *tree2){if(!tree1 && !tree2) return 1;if((tree1 && !tree2) ||(!tree1 && tree2)) return 0;if(tree1 && tree2) {if(tree1->c==tree2->c){if(compTree(tree1->leftChild, tree2->leftChild))returncompTree(tree1->rightChild, tree2->rightChild); else if(compTree(tree1->rightChild, tree2->leftChild)) return compTree(tree1->leftChild, tree2->rightChild);}}return 0;}int createTree(TreeNode *T){char ch;scanf("%c",&ch);if(ch=='@') T=NULL;else{ T=(TreeNode *)malloc(sizeof(TreeNode)); T->c=ch; createTree(T->leftChild); createTree(T->rightChild);}return 1;}void main(){TreeNode * T1;TreeNode * T2;int t1,t2;printf("请依次输入:ABC@@DE@G@@F@@@,@表示空格\n");t1=createTree(T1);if(t1) printf("T1Initial done!\n");t2=createTree(T2);if(t2) printf("T2Initial done!\n");t1 = compTree(T1,T2);if(t1) printf("T1 and T2 equals!\n"); else printf("T1 and T2 not equals!\n");}
- 请实现两棵树是否相等的比较,相等返回,否则返回其它值,并说明算法复杂度
- 请实现两棵树是否相等的比较,相等返回0,否则返回其他值,并说明算法复杂度。
- 题目:请实现两棵树是否相等的比较,相等返回,否则返回其他值,并说明算法复杂度。
- 比较两个字符串是否相等,相等输出MATCH,否则NOMATCH
- 比较两个 List 的值是否相等
- 比较两个Integer的值是否相等
- 直接比较两个对象是否相等返回false和List中判断是否包含某个对象的问题
- Java为什么两个值相等的对象==比较返回false而两个值相等的不同类型的的基本数据类型返回true
- 关联容器:永远让比较函数对相等的值返回false
- 汇编语言实现 输入字符进行比较 相等 返回1 不等返回-1
- 严格的二分查找算法,返回第一个相等的数,而不是返回任意一个相等的
- 比较字符串是否相等
- 比较字符串是否相等
- list比较是否相等
- 比较字符串是否相等
- 10.根据主类,完成Compare类,该类有两个boolean类型的方法,方法isSameNum用来比较两组数是否完全相同,方法isSameSum用来比较两组数的和是否相等。相同或者相等返回true,
- Java 比较两个 List 的值是否相等
- 比较2个list值是否相等的方法
- 用VBA怎样实现图片背景纹理
- NoClassDefDoundErr与ClassNotFoundException区别
- i++与赋值语句
- JFace Dialog 调整大小
- 库函数(备忘)--math.h
- 请实现两棵树是否相等的比较,相等返回,否则返回其它值,并说明算法复杂度
- 有点沉重
- VC++6.0下载,个人觉得很好
- linux之守护进程
- asp.net 自定义服务器控
- 窗口线程是由消息线程发展出来的
- 逻辑性强,其实是个致命的弱点
- 诡异的数组用法
- Android 执行shell脚本