当前位置: 首页 > wzjs >正文

网站做压测淘宝搜索关键词排名查询工具

网站做压测,淘宝搜索关键词排名查询工具,无锡网站建设无锡,河源疫情最新消息实验目的及要求: 通过深入学习树(Tree)和二叉树(Binary Tree)这两种重要的数据结构,掌握它们的基本概念、性质和操作,提高对树形结构的理解和应用能力。通过本实验,学生将深化对树和…

实验目的及要求:
通过深入学习树(Tree)和二叉树(Binary Tree)这两种重要的数据结构,掌握它们的基本概念、性质和操作,提高对树形结构的理解和应用能力。通过本实验,学生将深化对树和二叉树等数据结构的理解,提高编程能力和问题解决能力,为进一步学习复杂数据结构和算法打下基础。

实验设备环境:
1.微型计算机
2.DEV C++(或其他编译软件)

任务:
编写程序,建立如图 8-10(b) 所示的带头结点的二叉链存储结构二叉树,首先打印该二叉树,然后分别输出按照前序遍历、中序遍历和后序遍历方法访问各结点的信息,最后,查找字符'E是否在该二叉树中。
[输出显示函数设计] 按照某种遍历方法输出二叉树各结点的信息,其实就是把上述各遍历二叉树函数中的 Visit0 设计成输出结点信息的函数。Visit0 设计如下:

void Visit(DataType item){
printf("%c",item);
}


[设计]
设二叉树的结点定义以及带头结点二叉树的初始化操作、左结点插入操作、右结点插入操作、左子树删除操作、右子树删除操作的实现函数存放在文件 BiTree.h 中,设二叉树遍历操作和撤销操作的实现函数存放在文件 BiTreeTraverse.h 中。

代码如下:

头文件BiTree:#include<stdio.h>
#include<stdlib.h>
typedef char DataType;
typedef struct Node {DataType data;struct Node *leftChild;struct Node *rightChild;
} BiTreeNode;
void Initiate(BiTreeNode **root) {*root = (BiTreeNode*)malloc(sizeof(BiTreeNode));(*root)->leftChild = NULL;(*root)->rightChild = NULL;
}
BiTreeNode *InsertLeftNode(BiTreeNode *curr,DataType x) {BiTreeNode *s, *t;if(curr == NULL)return NULL;t = curr->leftChild;s = (BiTreeNode*)malloc(sizeof(BiTreeNode));s->data = x;s->leftChild = t;s->rightChild = NULL;curr->leftChild = s;return curr->leftChild;
}
BiTreeNode *InsertRightNode(BiTreeNode *curr,DataType x) {BiTreeNode *s, *t;if(curr == NULL)return NULL;t = curr->rightChild;s = (BiTreeNode*)malloc(sizeof(BiTreeNode));s->data = x;s->rightChild = t;s->leftChild = NULL;curr->rightChild = s;return curr->rightChild;
}
void Destroy(BiTreeNode **root) {if((*root) != NULL && (*root)->leftChild != NULL)Destroy(&(*root)->leftChild);if((*root) != NULL && (*root)->rightChild != NULL)Destroy(&(*root)->rightChild);free(*root);
}头文件BiTreeTraverse:#include"BiTree.h"
void Visit(DataType item) {printf("%c ",item);
}
void PrintBiTree(BiTreeNode *root, int n) {int i;if(root == NULL)return;PrintBiTree(root->rightChild,n + 1);for(i = 0; i < n-1 ; i++)printf(" ");if(n>0) {printf("---");printf("%c\n",root->data);}PrintBiTree(root->leftChild,n + 1);
}
BiTreeNode *Search(BiTreeNode *root,DataType x) {BiTreeNode *find=NULL;if(root!=NULL) {if(root->data==x)find=root;else {find=Search(root->leftChild,x);if(find==NULL)find=Search(root->rightChild,x);}}return find;
}
void PreOrder(BiTreeNode *t,void Visit(DataType item)) {if(t != NULL) {Visit(t->data);PreOrder(t->leftChild, Visit);PreOrder(t->rightChild, Visit);}
}
void InOrder(BiTreeNode *t,void Visit(DataType item)) {if(t != NULL) {InOrder(t->leftChild, Visit);Visit(t->data);InOrder(t->rightChild, Visit);}
}
void PostOrder(BiTreeNode *t,void Visit(DataType item)) {if(t != NULL) {PostOrder(t->leftChild, Visit);PostOrder(t->rightChild, Visit);Visit(t->data);}
}8-2:#include"BiTreeTraverse.h"
int main() {BiTreeNode *root,*p,*find;char x='E';Initiate(&root);p=InsertLeftNode(root,'A');p=InsertLeftNode(p,'B');p=InsertLeftNode(p,'D');p=InsertRightNode(p,'G');p=InsertRightNode(root->leftChild,'C');InsertLeftNode(p,'E');InsertRightNode(p,'F');PrintBiTree(root,0);printf("前序遍历:");PreOrder(root->leftChild,Visit);printf("\n中序遍历:");InOrder(root->leftChild,Visit);printf("\n后序遍历:");PostOrder(root->leftChild,Visit);find=Search(root,x);if(find!=NULL)printf("\n数据元素%c在二叉树中",x);elseprintf("\n数据元素%c不在二叉树中",x);Destroy(&root);return 0;
}

http://www.dtcms.com/wzjs/246601.html

相关文章:

  • 西宁哪家网络公司做网站搜索引擎seo优化怎么做
  • 西安专业做网站的包头整站优化
  • 南开区网站建设网站优化的方法有哪些
  • 网站策划应该怎么做关键词查询网址
  • 禅城网站建设多少钱站长工具seo综合查询源码
  • 以遇见为主题做网站宁波seo推荐
  • 宝盈集团直营网站怎么做网络公司网站模板
  • 品牌网站建设顾问网站推广多少钱
  • 茂名市城市建设档案馆网站公司网站模版
  • 个人网站设计摘要百度广告投放公司
  • 网站营销中常见问题seo整站优化多少钱
  • p2p网站如何建设百度网站app下载
  • 去国外做外卖网站seo搜索引擎优化工程师招聘
  • 重庆网站建设yunhuit友情链接查询结果
  • 南宁seo站内关键词优化客户资源买卖平台
  • 学动漫设计去哪个学校当阳seo外包
  • 武汉政鑫建设有限公司网站免费建立一个网站
  • 怎样做网站优化长沙做网站推广
  • 免费的外贸网站推广方法seo jsbapp9
  • 二次元网站模板网络推销
  • 网站建设费用的会计网站怎样做推广
  • 哪个网站做房子团购制作一个网站的费用是多少
  • 推广网站的图片怎么做百度推广账户登录
  • 实力网站建设深圳优化服务
  • 泉州城乡住房建设厅网站ui设计
  • 泰安做网站的今日热搜榜排名
  • 东莞本地招聘网站有哪些流感用什么药最好
  • 手工做的网站友の 连接
  • 江苏seo哪家好网站排名优化制作
  • 俄语网站建设电子商务网站开发