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

如何设计网站建设引导页这么做输入文字的网站

如何设计网站建设引导页,这么做输入文字的网站,wordpress在哪放商务通代码,app开发 上传wordpress目录 前言 已完成内容 二叉排序树实现 01-开发环境 02-文件布局 03-代码 01-主函数 02-头文件 03-BinarySearchTreeCommon.cpp 04-BinarySearchTreeFunction.cpp 结语 前言 此专栏包含408考研数据结构全部内容#xff0c;除其中使用到C引用外#xff0c;全为C语言…目录 前言 已完成内容 二叉排序树实现 01-开发环境 02-文件布局 03-代码 01-主函数 02-头文件 03-BinarySearchTreeCommon.cpp 04-BinarySearchTreeFunction.cpp 结语 前言 此专栏包含408考研数据结构全部内容除其中使用到C引用外全为C语言代码。使用C引用主要是为了简化指针的使用避免二重指针的出现。 已完成内容 [数据结构]01-顺序表C语言实现_Chandni.的博客-CSDN博客 [数据结构]02-单链表C语言实现_Chandni.的博客-CSDN博客 [数据结构]03-栈C语言实现_Chandni.的博客-CSDN博客 [数据结构]04-循环队列数组C语言实现_Chandni.的博客-CSDN博客 [数据结构]05-循环队列链表C语言实现_Chandni.的博客-CSDN博客 [数据结构]06-队列链表带头结点C语言实现_Chandni.的博客-CSDN博客 [数据结构]07-二叉树无头结点C语言实现_Chandni.的博客-CSDN博客 [数据结构]08-顺序查找顺序表指针实现形式C语言实现_Chandni.的博客-CSDN博客 [数据结构]09-二分查找顺序表指针实现形式C语言实现_Chandni.的博客-CSDN博客 二叉排序树实现 01-开发环境 语言C/C14 编译器MinGW64 集成开发环境CLion2022.1.3 02-文件布局 请在CLion集成开发环境中创建C可执行程序否则无法运行原因上面已解释。 ​​  03-代码 01-主函数 用于测试二叉排序树的创建、查找、删除。 其中创建、查找使用了两种方式实现。一种是非递归形式for循环另一种是递归形式。 #include ./Head/BinarySearchTreeData.h #include ./Source/BinarySearchTreeCommon.cpp #include ./Source/BinarySearchTreeFunction.cppint main() {// 创建BinaryTree BST NULL;int data[7] {54, 20, 66, 40, 28, 79, 58};int Length 7;BinarySearchTreeCreate(BST, data, Length);InOrderTraversalTree(BST); // 有小到大printf(\n);// 查找BinaryTree OutputTree;OutputTree BinarySearchTreeSearch(BST, 66);if (OutputTree) {printf(Value %d\n, OutputTree-data);} else {printf(Not Find.\n);}// 递归创建BinaryTree BST1 NULL;BinarySearchTreeRecursionCreate(BST1, data, Length);InOrderTraversalTree(BST1); // 有小到大printf(\n);// 查找OutputTree BinarySearchTreeRecursionSearch(BST1, 66);if (OutputTree) {printf(Value %d\n, OutputTree-data);} else {printf(Not Find.\n);}// 删除BinarySearchTreeRecursionDelete(BST, 66);InOrderTraversalTree(BST);printf(\n);return 0; }02-头文件 用于存储结构体和常量等。 // // Created by 24955 on 2023-03-04. //#ifndef INC_03_BINARYSEARCH_SORT_TREE_BINARYSEARCHTREEDATA_H #define INC_03_BINARYSEARCH_SORT_TREE_BINARYSEARCHTREEDATA_H // 头文件 #include stdio.h #include stdlib.h// 常量 typedef int ElemType;// 结构体 typedef struct BinaryTreeNode {ElemType data;struct BinaryTreeNode *lChild, *rChild; } BinaryTreeNode, *BinaryTree; #endif //INC_03_BINARYSEARCH_SORT_TREE_BINARYSEARCHTREEDATA_H03-BinarySearchTreeCommon.cpp 用于存储二叉排序树打印函数中序遍历--为有序排列从小到大。 // // Created by 24955 on 2023-03-04. // // 中序遍历 void InOrderTraversalTree(BinaryTree BTree) {/** 1. 左、自身、右*/if (BTree ! NULL) {InOrderTraversalTree(BTree-lChild);printf(%3d, BTree-data);InOrderTraversalTree(BTree-rChild);} } 04-BinarySearchTreeFunction.cpp 用于存储二叉排序树创建、查找、删除等函数。 // // Created by 24955 on 2023-03-04. // // 二叉排序树插入结点 void BinarySearchTreeInsert(BinaryTree BST, ElemType value) {/** 1. 初始化新结点* 2. 判断是否为根节点* 3. 不为根节点比较两节点数值大小决定插入位置*/// 初始化新结点BinaryTree NewNode (BinaryTree) calloc(1, sizeof(BinaryTreeNode));NewNode-data value;// 循环树结点标签BinaryTree BSTLabel BST;if (BST NULL) {BST NewNode;} else {// 插入结点while (BSTLabel) {if (BSTLabel-data value) {if (BSTLabel-lChild NULL) {BSTLabel-lChild NewNode;break;} else {BSTLabel BSTLabel-lChild;}} else {if (BSTLabel-rChild NULL) {BSTLabel-rChild NewNode;break;} else {BSTLabel BSTLabel-rChild;}}}// 或者采用以下代码(用空间减少循环中判断即换时间)/*BinaryTree BSTLabelParent;while (BSTLabel) {BSTLabelParent BSTLabel;if (BSTLabel-data value) {BSTLabel BSTLabel-lChild;} else { // 不用考虑相等情况408中未考过存在相同值的情况BSTLabel BSTLabel-rChild;}}if (BSTLabelParent-data value){BSTLabelParent-lChild NewNode;} else {BSTLabelParent-rChild NewNode;}*/} }// 创建二叉排序树 void BinarySearchTreeCreate(BinaryTree BST, const ElemType data[], int Length) {/** 1. 初始化树根* 2. 按数据值大小插入树*/// const是C语言的一种关键字它所限定的变量是不允许被改变的// 树根BST NULL;for (int i 0; i Length; i) {BinarySearchTreeInsert(BST, data[i]);} }// 二叉排序树查找(也可以采用递归方式) BinaryTree BinarySearchTreeSearch(BinaryTree BST, ElemType value) {/** 1. 判断根节点值是否与待查找值相等* 2. 若相等返回根结点地址* 3. 若不相等判断是否大于当前结点值若小于BST BST-lChild;反之大于BST BST-rChild;* 4. 若未查到返回NULL*/while (BST) {if (BST-data value) {return BST;} else if (BST-data value) {BST BST-lChild;} else {BST BST-rChild;}}return NULL; }/*************************** 以下为递归方式实现 *******************************/ // 递归方法插入树新结点 void BinarySearchTreeRecursionInsert(BinaryTree BST, ElemType value) {/** 1. 判断当前结点是否为空* 2. 若为空插入* 3. 若不为空判断大小进行递归*/if (BST NULL) {// 初始化新结点BinaryTree NewNode (BinaryTree) calloc(1, sizeof(BinaryTreeNode));NewNode-data value;BST NewNode;} else {if (BST-data value) {BinarySearchTreeRecursionInsert(BST-lChild, value);} else {BinarySearchTreeRecursionInsert(BST-rChild, value);}} }// 调用递归插入函数创建二叉排序树 void BinarySearchTreeRecursionCreate(BinaryTree BST, const ElemType data[], int Length) {/** 1. 初始化树根* 2. 按数据值大小插入树*/// const是C语言的一种关键字它所限定的变量是不允许被改变的// 树根BST NULL;for (int i 0; i Length; i) {BinarySearchTreeRecursionInsert(BST, data[i]);} }void BinarySearchTreeRecursionDelete(BinaryTree BST, ElemType value) {/** 1. 若删除元素值比当前元素值小递归传入左孩子* 2. 若删除元素值比当前元素值大递归传入右孩子* 3. 若相等则判断当前元素左、右孩子是否为空* 4. 若其中任意一个为空则将另一个替代要当前元素(要删除元素)* 5. 若都不为空循环寻找当前元素左子树中最大值替代当前元素值并删除左子树中用于替代的结点*/// 防止输入的为树中未包含元素无法停止递归if (BST NULL) {return;}if (BST-data value) {BinarySearchTreeRecursionDelete(BST-lChild, value);} else if (BST-data value) {BinarySearchTreeRecursionDelete(BST-rChild, value);} else {BinaryTree FreeNode;// 若左、右孩子其中任意一个为空则将另一个替代要当前元素(要删除元素)if (BST-lChild NULL) {FreeNode BST;BST BST-rChild;free(FreeNode);} else if (BST-rChild NULL) {FreeNode BST;BST BST-lChild;free(FreeNode);} else {// 左、右孩子都不为空// 一般删除策略为左子树的最大数据 或 右子树的最小数据替代要删除的结点// 此处采用左子树的最大数据BinaryTree TemporaryTree BST-lChild;// 寻找左子树中的最大值while (TemporaryTree-rChild) {TemporaryTree TemporaryTree-rChild;}// 替代删除替代结点BST-data TemporaryTree-data;// 此处注意不要传入TemporaryTree// 经单点调试发现传入TemporaryTree会造成乱码(未将叶子结点设为NULL)BinarySearchTreeRecursionDelete(BST-lChild, TemporaryTree-data);}} }// 二叉排序树查找-递归方式 BinaryTree BinarySearchTreeRecursionSearch(BinaryTree BST, ElemType value) {/** 1. 返回值为NULL或所查找到的结点*/if (BST ! NULL BST-data ! value) {if (BST-data value) {BST BinarySearchTreeRecursionSearch(BST-lChild, value);} else {BST BinarySearchTreeRecursionSearch(BST-rChild, value);}}return BST; } 结语 此博客主要用于408考研数据结构C语言实现记录内有不足可留言可讨论。
http://www.hkea.cn/news/14298512/

相关文章:

  • 鼓楼微网站开发深圳建设集团有限公司官网
  • 信息网站 模板创意设计公司官网
  • 微信公众号的网站企业营销是啥意思
  • 哪个域名注册网站好西安网站建设多少钱
  • 网站建设颜色注意事项电子商城网站建设参考文献
  • 网站建设介绍推广用语西安网站建立
  • 教学成果申报网站 化工专业建设买了网站模版怎么做
  • 成都专业网站营销北辰手机网站建设
  • 有创意的网站开发都匀网站建设公司
  • 网站目录权限设置东莞软文推广
  • 关于怎样把网站建设好的一些建议cms影视源码采集
  • 校园局域网站建设费用给个网站能用的2022
  • 做网站需要备案吗服装网站建设发展状况
  • 哪个网站代做ppt便宜长清网站建设
  • 石家庄集团公司网站建设wordpress主题怎么设置tdk
  • 内衣网站建设推广手机网站 微信平台
  • 做类似简书的网站排名
  • php企业网站 源码企业电子商务网站建设总结
  • 做建筑效果图最好的网站12380网站建设情况
  • 集团公司网站模板装修网页设计网站
  • 推荐佛山伦教网站设计网站空间和数据库空间
  • 泰州企业网站模板建站网站重大建设项目公开发布制度
  • 网站微信登录怎么做杭州比较好的软装设计公司
  • 企业网站建设好处中国制造网简介
  • 网站逻辑结构优化是指万家建设有限公司网站
  • 装饰网站建设优惠套餐企业网络营销分析报告
  • 上海市建设安全协会网站查询系统瘫网站开发方案 文档
  • 盘锦网站建设公司wap端网站建设
  • 商城网站建设资讯网站丢失了怎么办啊
  • 手机网站建站工作室网站怎么推广引流