- 博客(5)
- 收藏
- 关注
原创 给定一棵二叉树,使用递归的方法实现二叉树的左右子树交换,并输出交换后的二叉树的先(前)序遍历结果。
BiTreeNode* BiTreeChange(BiTreeNode* root)// 实现二叉树左右子树的交换(递归法)// 参数:二叉树根节点root// 返回:二叉树{ // 请在这里补充代码,完成本关任务 /********** Begin *********/ int max=10000; BiTreeNode* str[max]; int k=0; str[k]=0; if(root) { k
2020-11-17 20:42:30
4047
原创 给定一棵二叉树,计算该二叉树的深度、总节点个数和叶子节点个数。
#include "binary_tree.h"int GetTreeDepth(BiTreeNode* root)// 计算该二叉树的深度// 参数:二叉树根节点root// 返回:二叉树的深度{ // 请在这里补充代码,完成本关任务 /********** Begin *********/ int m; int n; if(root==NULL) { return 0; } else { m=GetTreeD
2020-11-17 20:39:46
4556
原创 利用先序遍历创建二叉树,并给出相应二叉树的中序遍历结果。
BiTreeNode* CreatBiTree(char* s, int &i, int len)// 利用先序遍历创建二叉树// 参数:先序遍历字符串s,字符串初始下标i=0,字符串长度len。// 返回:二叉树{ // 请在这里补充代码,完成本关任务 /********** Begin *********/ BiTreeNode* root; char item = s[i++]; if(i>=len || item=='#')//当字符串下标
2020-11-17 20:37:46
4482
3
原创 层次遍历二叉树
void HierarchyOrder(BiTreeNode* root)// 二叉树的层次遍历(队列实现)// 参数:二叉树根节点root// 输出:二叉树的层次遍历,中间没有空格,末尾不换行。{ // 请在这里补充代码,完成本关任务 /********** Begin *********/ queue<BiTreeNode*> q; if(root!=NULL) { q.push(root); } while(!
2020-11-17 20:34:35
1803
原创 #回文串数据结构,链栈表示
#回文串数据结构,链栈表示// An highlighted bl;void Palindrome(T* str, int len)// 利用stack栈判断字符串是否为回文串// 输入参数:字符串序列,字符串长度// 若是回文串输出YES,否则输出NO,末尾换行{ // 请在这里补充代码,完成本关任务 /********** Begin *********/ int maxlen=10000; Stack *stk=Stack_Create( maxlen
2020-11-15 21:52:04
448
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人