树的静态实现

【2023王道数据结构】【树与二叉树】通过C++实现构造哈夫曼树基于三叉静态链表C、C++完整实现(可直接运行) 🌜笔锋至此又怎能平淡而终,故事开始便不承认普通🌛 📌 题目及题解持续更新中 👀👀👀 【2023王道数据结构目录】课后算法设计题C、C++代码实现完整版大全 题目: 通过C++实现构造哈夫曼树基于三叉静态链表 初始权值为7,5,2,4 运行截图: 代码实现: #include <iostream> #include <algorithm> using namespace std; // 构建静态链表结点 typedef struct { double weig. 阅读详情
#include<stdio.h>
#include<queue>
using namespace std;
const int maxn=10005;
int N,i,num[maxn],index=0;
struct node{
    int data,lchild,rchild,layer;
}Node[maxn];
int newNode(int x){
    Node[index].data=x;
    Node[index].lchild=Node[index].rchild=-1;
    return index++;
}
void search(int root,int x,int newdata){
    if(root==-1)
        return;
    if(Node[root].data==x)
        Node[root].data=newdata;
    search(Node[root].lchild,x,newdata);
    search(Node[root].rchild,x,newdata);
}
void insert(int &root,int x){
    if(root==-1){
        root=newNode(x);
        return;
    }
    if(Node[root].data<x)
        insert(Node[root].rchild,x);
    else
        insert(Node[root].lchild,x);
}
int Create(int data[],int n){
    int root=-1;
    for(int i=0;i<n;i++)
        insert(root,data[i]);
    return root;
}
void PreOrder(int root){
    if(root==-1)
        return;
    printf("%d ",Node[root].data);
    PreOrder(Node[root].lchild);
    PreOrder(Node[root].rchild);
}
void InOrder(int root){
    if(root==-1)
        return;
    InOrder(Node[root].lchild);
    printf("%d ",Node[root].data);
    InOrder(Node[root].rchild);
}
void PostOrder(int root){
    if(root==-1)
        return;
    PostOrder(Node[root].lchild);
    PostOrder(Node[root].rchild);
    printf("%d ",Node[root].data);
}
void LayerOrder(int root){
    queue<int> q;
    q.push(root);
    while(!q.empty()){
        int now=q.front();
        q.pop();
        printf("%d ",Node[now].data);
        if(Node[now].lchild!=-1)
            q.push(Node[now].lchild);
        if(Node[now].rchild!=-1)
            q.push(Node[now].rchild);
    }
}
int main(){
    scanf("%d",&N);
    for(i=0;i<N;i++)
        scanf("%d",num+i);
    int root=Create(num,N);
    printf("LayerOrder:");
    LayerOrder(0);
    printf("\nPreOrder:");
    PreOrder(0);
    printf("\nInOrder:");
    InOrder(0);
    printf("\nPostOrder:");
    PostOrder(0);
    return 0;
}
静态树例子 js静态树、一级树形菜单、多级树形菜单,可用。 立即下载

相关推荐

JS 静态树 dtree

加了几句注释 博文链接:https://yhef.iteye.com/blog/743739

静态树表的查找(最优查找树和次优查找树)

静态树表的查找(最优查找树和次优查找树)

Keep_Trying_Go的博客 3778

动态,静态生成树形结构数据

可以动态获取数据后显示树形结构数据。 可以静态示树形结构数据。

静态树表(次优查找树)(第九章 P222 算法9.3,9.4)

typedef int Status; /* Status是函数的类型,其值是函数结果状态代码,如OK等 */ typedef int Boolean; /* Boolean是布尔类型,其值是TRUE或FALSE */ #include<malloc.h> /* malloc()等 */ #include<stdio.h> /* EOF(=...

但行好事,莫问前程 1420

跨境电商ERP开发之Shopee开发者账号申请

引言:由于电子信息技术和经济全球化的进一步发展,电子商务在国际贸易中的影响力和关键作用日渐突显,已变成中国出口贸易的市场趋势。跨境电商未来的发展前景必定是有助于减少经济成本、推动全球贸易便利化,有助于提高国内群众福祉,有助于打造良好的营商环境,从而推动经济长期健康发展。 gitee仓库地址: https://gitee.com/naturalwish/SSERP/tree/master 以下授权教学同ShopeeOpen Platform - Developer Guide 申请流程 ..

naturalwish的专栏 3641

什么是“静态树提升“(Static Tree Hoisting)?

什么是"静态树提升"(Static Tree Hoisting)?

weixin_64974855的博客 526

华为服务器RAID配置避坑指南:如何通过iBMC快速识别阵列卡型号并完成初始化

本文详细解析华为服务器RAID配置全流程,重点介绍通过iBMC快速识别阵列卡型号、硬盘健康诊断及RAID级别选择的场景化策略。提供从iBMC登录到缓存策略调优的实战技巧,帮助工程师避免常见配置陷阱,提升服务器存储系统性能和稳定性。

weixin_28475533的博客 492

【zTree】zTree的3.5.26静态树与动态树(实用)

  1.静态树: 目录结构:(css与js为下载的原文件夹)   代码 &lt;!DOCTYPE html&gt; &lt;html&gt; &lt;head&gt; &lt;meta charset="UTF-8"&gt; &lt;title&gt;zTree测试&lt;/title&gt; &l

weixin_33850015的博客 633

【2023校招】网易雷火_研发岗_笔试题解

几个月没写题,果然水平不在线了hh,AK更难实现喽,当天只AK了疯狂游戏; 题目描述和数据等尽量多的CV到了DEVC里,可能不够细节和准确; 下面进入正题,分享我们此次笔试的题目描述和代码设计吧~.........

米莱虾 4545

具身智能:原理、算法与系统 第18章 模仿学习与人类示范

与基于试错机制的强化学习不同,模仿学习假设存在能够提供高质量轨迹示范的专家策略,学习者的目标是在不直接访问专家内部决策机制的情况下,复现或泛化专家的行为模式。此外,选项 GAIL(Option-GAIL)将分层强化学习与对抗模仿结合,学习选项(Options)级别的策略,能够捕捉专家示范中的多模态行为与高层意图。X-Sim 框架提出从真实到模拟再到真实的迁移路径:首先从人类视频中重建物理仿真环境,在仿真中训练状态级策略,随后通过策略蒸馏获得基于视觉的策略,最后通过在线领域自适应对齐真实与仿真观测。

VectorShift的博客 127

JS静态树_Dtree

以下是Dtree树(他的下载地址是:http://www.destroydrop.com/javascripts/tree/ ):解析:1.d = new dTree(d);作用:初始化一棵名为d的树;2.mytree.add(1, 0, My node, node.html, node title, mainframe, img/musicfolder.gi

vastskyjoe的专栏 1741

TGRS 2026 即插即用 | 注意力篇 | SCFM:双向交叉显著性引导注意力,高层语义与低层细节的双向互补!

本文介绍了MPCNet中的语义引导交叉注意力融合模块(SCFM),该模块通过双向交叉显著性引导机制实现跨尺度特征融合。SCFM创新性地结合了高层语义和低层细节的互补信息,通过轻量局部空间注意力预增强和坐标注意力全局融合引导,显著提升了红外小目标检测的精度。实验表明,SCFM在多个数据集上达到SOTA性能,同时保持轻量高效的计算特性,支持端侧设备部署。 SCFM的核心贡献包括: 双向交叉显著性引导机制,实现语义与细节的互补融合 轻量局部空间注意力预增强模块,计算量仅为传统方法的1/10 坐标注意力全局融合引导

主要更新底层视觉(去噪、超分等)相关的科研内容,形式为【论文精读】+【论文复现】 152

前缀树java静态实现

【代码】前缀树java静态实现。

2302_78561430的博客 155

【数据集】1980-2020年(5年)土地利用分类数据-中国科学院

简介1980-2020年每五年土地利用数据-中国科学院

WW、forever的博客 3936

ROCm rocr-libhsakmt分析系列1-2:多GPU跨卡VRAM访问机制分析

本文基于ROCr-Runtime的libhsakmt库源码,深入分析了多GPU系统中跨设备内存访问的实现机制。主要内容包括: 实现流程概述:通过P2P拓扑发现、统一虚拟地址空间、页表映射和硬件转发四个步骤,实现零拷贝的跨GPU内存访问。

图形/计算GPU的驱动与虚拟化技术分享园地 2510

静态列表BST树的简单功能实现

文章目录1,存储方式2,创建方法1)获得孩子坐标2)父亲结点3)定义添加节点函数4)初始化BST树3,一些方法1)中序遍历2)删除结点 BST树的创建方法其实在网上随便一搜就能搜到好多的,不过网上的BST树基本都是使用链表实现。其实使用静态列表个人觉得没什么用处,不过还是写一下来锻炼自己对数组的一些操作。 1,存储方式 当然使用数组来存了。我先定义了两个常数 MAXSIZE 数组的最大值 DEFAULT_VALUE 未使用某结点时将其值设为该默认值 类中的数组名我起为tree_list 2,创建方法 1

记录个人学习、笔记 550

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Trie树(静态数组实现)

这是 C++ 的语法要求。static成员变量必须在类外进行定义和初始化。这里将所有数组初始化为 0,并将节点计数器cnt初始化为1。这意味着节点编号从 1 开始,我们通常把节点 1 当作字典树的根节点(root)。0在这里被用作一个特殊值,表示“空”或“不存在的节点”。

2302_80118884的博客 793

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

静态数组实现前缀树

int cnt=1;i<maxn;i++){p[i]=0;e[i]=0;j<26;j++){int cur=1;p[cur]++;i++){p[cur]++;e[cur]++;int cur=1;i++){int cur=1;i++){int cur=1;i++){return;e[cur]--;i<=cnt;i++){p[i]=0;e[i]=0;j<26;j++){cnt=1;init();

2402_87646581的博客 323

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

【有序表实现ADT-ONE:AVL树静态模板实现】

AVL树实现有序表。 AVL树的静态数组实现

博客网站地址: https://arsenova.xyz 我会将优快云上的博客重修一部分迁移到网站上。 文章会做同步更新,但我不会在这个糟糕的平台多待1秒。下面是我要说的话,save your time. keep going 1148

字典树(前缀树、Trie)概念介绍、静态实现、动态实现

字典树: 又称前缀树,Trie树,是一种树形结构。典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串)。它的优点是:利用字符串的公共前缀来减少查询时间,最大限度地减少无谓的字符串比较。 它的最基本的操作是插入一个字符串,和查询。 存储结构: const int maxnode = maxn*maxlen; //字符串个数*字符串的长度 int trie[maxnode][size],t...

SongyangJi 854

huffman树--静态链表和链表实现(借助优先队列)

静态链表实现: #include<iostream> #include<vector> #include<string> using namespace std; const int maxWeight = 32767; struct HTNode { char data; int weight; int parent,lchild,rchild; ...

qq_40691051的博客 1041

基于矢量量化的联合指纹解密方案及其matlab实现(5)-构造静态密钥树

1,构造静态密钥树 Yi是该码字,Yic是该码字的不相似码字,Yi’是该码字的相似码字。 详细过程 接下来准备根据不相似对和相似对构造静态密钥树。 不相似对:G0和G1,它们各有128列,是16*256的矩阵,把两个矩阵中的元素一一对应起来,构成不相似对。 相似对:通过穷尽搜索,比较欧氏距离得出一个码字的最相似码字。例:要计算码字1的最相似码字,需要对除码字1的其他255个码字分别进行计算欧式距离,从而进行比较,得出最相似码字。 将[码字 该码字的不相似码字 该码字的最相似码字] 三个值关联起来,构造静态

q43956的博客 3441

算法竞赛有关数据结构的补充(2)--- 栈、队列的静态实现和树的实现

树型结构是一类重要的非线性数据结构。有一个特殊的结点,称为根结点,根结点没有前驱结点。除根结点外,其余结点被分成 (M) 个互不相交的集合 (T_1、T_2、…、T_m),其中每一个集合 (T) 又是一棵树,称这棵树为根节点的子树。因此,树是递归定义的。

Fcy648的博客 427
上一篇: 1020 Tree Traversals (25 分)
下一篇: AVL-平衡二叉树的创建和遍历
菜菜2022
博客等级 码龄9年 67粉丝 1033原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值