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

宣传部网站建设方案wordpress幻灯片的调用

宣传部网站建设方案,wordpress幻灯片的调用,wordpress启用多站点,wordpress增加js效果目录 前言 概述 接口: 源码: 测试函数: 运行结果: 往期精彩内容 前言 孩子,一定要记得你的父母啊!!! 哈哈,今天开始学习树结构中的双亲表示法,让孩…

目录

前言

概述

接口: 

源码:

测试函数:

运行结果:

往期精彩内容


前言

孩子,一定要记得你的父母啊!!!

哈哈,今天开始学习树结构中的双亲表示法,让孩子记得归家的路,记得自己的父母是谁😉😉😉

概述

树的双亲表示法是一种常用的树的存储结构,它通过使用一个数组来表示树的节点,并且每个节点都包含了其父节点的索引信息。

在双亲表示法中,树的每个节点都包含以下两个信息:

  1. 节点的数据域:用来存储节点的数据。
  2. 父节点索引:用来存储该节点的父节点在数组中的索引。

每一个节点我们可以这样表示:

其中 data 是数据域,存储结点的数据信息。而 parent 是指针域,存储该结点的双亲在数组中的下标。 

通过这种方式,我们可以方便地找到一个节点的父节点,并且能够实现树的遍历和操作。

使用双亲表示法可以有效地存储树的结构,并且可以方便地进行遍历和操作。但双亲表示法的缺点是,它不太适合表示具有大量节点的树,因为节点之间的关系需要通过数组来表示,可能会浪费一定的空间。
 

接口: 

void addNode(char* data, char* parent);
void getParent(char* dest, char* child);
bool bTrueIfEmptyTree();
bool bTrueIfFullFilledTree();

源码:

#include<string.h>
#include<stdio.h>
#include <malloc.h>
class TREE{
private:struct PARENTSTRUCT{char data[15];struct PARENTSTRUCT* parent;};struct  PARENTSTRUCT* index[15];unsigned int currentSite = 0;struct  PARENTSTRUCT* findParent(char* child);	public:void addNode(char* data, char* parent);
void getParent(char* dest, char* child);
bool bTrueIfEmptyTree();
bool bTrueIfFullFilledTree();
};
struct  TREE::PARENTSTRUCT* TREE::findParent(char* child)
{for (int i = 0; i < currentSite; ++i){if (strcmp(child, index[i]->data) == 0){return index[i]->parent;}}}
void TREE::addNode(char* data, char* parent)
{index[currentSite] = (PARENTSTRUCT*)malloc(sizeof(PARENTSTRUCT));strcpy(index[currentSite]->data, data);if (parent == nullptr){index[currentSite]->parent = nullptr;}else{for (int i = 0; i < currentSite; ++i){if (strcmp(parent, index[i]->data) == 0){index[currentSite]->parent = index[i];}}}currentSite++;return;
}
bool TREE::bTrueIfFullFilledTree()
{if (currentSite == 15){return true;}else{return false;}
}
void TREE::getParent(char* dest, char* child)
{PARENTSTRUCT* ptr = findParent(child);if (ptr != nullptr){strcpy(dest, ptr->data);}else{strcpy(dest, "抱歉,此为根");}return;
}

由下图数据来建一棵树,由此进行测试 

测试函数:

#include<stdio.h>
#include<iostream>
using namespace std;
#include"TREE.h"//上面提到的源码函数头文件
#include<windows.h>
int main()
{TREE tree;tree.addNode("A", nullptr);tree.addNode("B","A");tree.addNode("C", "A");tree.addNode("D", "B");tree.addNode("G", "D");tree.addNode("H", "D");tree.addNode("I", "D");tree.addNode("E", "C");tree.addNode("F", "C");tree.addNode("J", "E");char buff[40];tree.getParent(buff, "H");cout << "输出H的父母:" << buff << endl;tree.getParent(buff, "J");cout << "输出J的父母:" << buff << endl;system("pause");return 0;
}

运行结果:

往期精彩内容

数据结构第一天(生成1000以内的随机数自动填充数组)

数据结构第二天(直接插入排序/内存申请/指针操作)

数据结构第三天(折半插入排序)

数据结构第四天(希尔排序)

数据结构第五天(冒泡排序)

数据结构第六天(快速排序)

http://www.dtcms.com/a/592114.html

相关文章:

  • 做折扣的网站免费创建个人博客网站
  • 网站弹窗是怎么做的自助做网站傻瓜式自助建站工具
  • 磐安县住和城乡建设局网站做房产抵押网站需要什么
  • 网站浮标怎么做建筑工程完工证明格式
  • 保定网站制作北京市网站建设 维护推荐
  • 网站开发实习报告页面设计风格的主要内容
  • h5商城网站模板下载微网站建设微网站建设
  • 王店镇建设中学网站wordpress 主题类型
  • 哪个网站建站好500平台wordpress导入演示卡主
  • 史上最全设计网站怎么编辑网站后台
  • 学院网站建设自评wordpress代码增强插件下载
  • 网站内容的编辑和更新怎么做的装修公司的网站怎么做
  • 网站开发 项目章程北京网络网站建设
  • 网站内外链怎么做网站建设方案预算
  • 网站建设笔记网站建设哈尔滨
  • 五棵松网站建设织梦网站栏目不显示不出来
  • 开发网站设计服装网站目标
  • 网站建设怎么设置权限semicircle
  • 科技公司企业网站建设网站设计怎么做才好看
  • 免费找答案的网站做最好的在线中文绅士本子阅读网站6
  • 优秀网站建设评选活动海报定制西服
  • 苏州网站建设工作室英文网站首页优化
  • 建立网站的客户端
  • 用asp.net做的网站框架养殖场网站模板
  • 临海市住房与城乡建设规划局网站特色软件app推荐
  • 视频网站建设工具企业管理咨询公司怎么样
  • 浙江杰立建设集团网站网站开发摊销多少年
  • 河南建设工程质量监督局网站外贸平台有哪些分别对应哪个市场
  • 天津网站制作工具联通公司做网站吗
  • 怎么做搜索网站网站优化免费软件