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

数据结构 软考

算法具有5个特性

可行性,有限性,确定性,输入, 输出

图:  有向图 Kruskal(克鲁斯卡尔)算法   和 prim(普鲁姆)算法  都是贪心算法

是一种用来在加权连通图中寻找最小生成树的算法,其操作对象是边.  找最小的不形成环

1.哈夫曼树(也叫最优树)

即叶子节点的带权路径长度最小 (树的第一层权就是0, 第二层就是1)
 

构造  19, 21, 2, 3,6, 7, 10, 32 的哈夫曼树,并计算WPL(带权路经长度)的值?

解题思路: 

带权路经长度计算公式 = 哈夫曼树每层的叶子节点 乘以 权, 然后相加即可

哈夫曼树特点: 从下往上,每一层从左到右递增, 取最小的2个向上构建,求和的结果放上去,把相加的2个数去掉,  不断的找最小的2个,直至所有的数都去掉,即构造完成

2.完全二叉树 / 满二叉树

完全二叉树(Complete Binary Tree)是一种特殊的二叉树,它的定义是:如果设二叉树的深度为h,除第h层外,其它各层(1~h-1)的结点数都达到最大个数,第h层所有的结点都连续集中在最左边,这就是完全二叉树

每层将节点尽量排满, 如果有空节点,则只在最后一层上,因此,树的高度相对其他二叉树一定是最小的

满二叉树:  每一层都达到最大个数

3. 平衡二叉树 

判断是否是平衡二叉树: 计算每个节点的平衡度(左子树高度减去右子树高度), 平衡度值是-1, 0, 1 , 说明是平衡二叉树, 否则是 非平衡二叉树

4.查找二叉树(也叫二叉排序树) 

左孩子节点 < 根  右孩子节点 > 根

5.线索二叉树

通过增设指针去保存节点的前驱后继关系

http://www.lryc.cn/news/469253.html

相关文章:

  • colcon构建ros2功能包时,出现exited with code 2报错的解决方案(bug)
  • 【大模型LLM面试合集】大语言模型架构_位置编码
  • FLINK 分流
  • 从零开始:构建一个高效的开源管理系统——使用 React 和 Ruoyi-Vue-Plus 的实战指南
  • windows下pycharm社区版2024下载与安装(包含新建第一个工程)
  • 重构案例:将纯HTML/JS项目迁移到Webpack
  • 表格编辑demo
  • 企业自建邮件系统选U-Mail ,功能强大、安全稳定
  • 蓝桥杯题目理解
  • 浪潮云启操作系统(InLinux)bcache缓存实践:理解OpenStack环境下虚拟机卷、Ceph OSD、bcache设备之间的映射关系
  • 通过ssh端口反向通道建立并实现linux系统的xrdp以及web访问
  • # 渗透测试#安全见闻8 量子物理面临的安全挑战
  • 【rabbitmq】实现问答消息消费示例
  • 单片机_RTOS__架构概念
  • ClickHouse在百度MEG数据中台的落地和优化
  • B/S架构(Browser/Server)与C/S架构(Client/Server)
  • idea中自定义注释模板语法
  • 基于SSM的儿童教育网站【附源码】
  • 深挖自闭症病因与孩子表现的关联
  • [网络协议篇] UDP协议
  • 关系型数据库(1)----MySQL(初阶)
  • 计算机毕业设计Python+大模型租房推荐系统 租房大屏可视化 租房爬虫 hadoop spark 58同城租房爬虫 房源推荐系统
  • 深度学习技术演进:从 CNN、RNN 到 Transformer 的发展与原理解析
  • Lua中的goto语句
  • 【rust实战】rust博客系统2_使用wrap启动rust项目服务
  • 【实战案例】Django框架使用模板渲染视图页面及异常处理
  • 设置K8s管理节点异常容忍时间
  • 什么样的JSON编辑器才好用
  • ArkUI自定义TabBar组件
  • pair类型应用举例