一、实验目的 1、了解文件的概念。 2、掌握线性链表的插入、删除等算法。 3、掌握Huffman树的概念及构造方法。 4、掌握二叉树的存储结构及遍历算法。 5、利用Huffman树及Huffman编码,掌握实现文件压缩的一般原理。 二、设备与环境 微型计算机、Windows系列操作系统 、Visua ...
分类:
编程语言 时间:
2021-01-27 13:40:41
阅读次数:
0
散列表是普通数组概念的推广,由下标与值的映射提高为键值分别与下标的映射。 数组中查找元素需对下标遍历来查询值,复杂度通常是非常数。而散列表由键到下标是常数级,因此散列表是典型的空间换时间的数据结构。 由键到下标的映射有不同的方法,即哈希函数,可能会造成哈希冲突。 一、直接寻址表 当全域比较小时,关键 ...
分类:
其他好文 时间:
2021-01-27 13:14:21
阅读次数:
0
数据结构 字典 list.append NodeList定义和操作 递归 操作 enumerate zip divmod,// (x if a else y) string = list lis.sort int(str(x)[::-1]) 去空格:str.strip() ...
分类:
编程语言 时间:
2021-01-27 13:13:12
阅读次数:
0
题目描述 给定一个单链表,其中的元素按升序排序,请将它转化成平衡二叉搜索树(BST) 示例1 输入 复制 {-1,0,1,2} 返回值 复制 {1,0,2,-1} 说明:本题目包含复杂数据结构TreeNode、ListNode,点此查看相关信息 typedef TreeNode Node; /** ...
分类:
其他好文 时间:
2021-01-27 12:51:44
阅读次数:
0
题目描述 在O(n log n)的时间内使用常数级空间复杂度对链表进行排序。 示例1 输入 复制 {30,20,40} 返回值 复制 {20,30,40} 说明:本题目包含复杂数据结构ListNode,点此查看相关信息 #define null NULL #define Node ListNode ...
分类:
编程语言 时间:
2021-01-26 12:21:33
阅读次数:
0
JavaScript 二叉查找树 关于树 树是一种分层数据的抽象模型。是一种非顺序数据结构,对于存储需要快速查找的数据非常有效 树的结构特点: 每个父节点都有 0 个或多个子节点。 除了根节点外,每个子节点都有且仅有一个父节点 树的深度:取决于父节点的数量 叶子节点:没有子节点的节点 二叉查找树 每 ...
分类:
编程语言 时间:
2021-01-26 12:04:58
阅读次数:
0
有向带权图的单源最短路径经典算法是dijkstra,下面就对算法的过程和代码实现进行记录 算法过程: 1、数据结构:图的带权邻接矩阵G.Edge[u][i],如果u到i有边则G.Edge[u][i]等于<u,i>边的权值;否则G.Edge[u][i]等于∞。 一维数组dist[i]记录从起始点到i节 ...
分类:
编程语言 时间:
2021-01-26 11:52:33
阅读次数:
0
题解 并不需要什么高级数据结构 用树链剖分维护 对于每种颜色开个 \(\text{vector}\),然后把是这种颜色的点的 \(\text{dfs}\) 序加进来排序 对于 \([dfn[top[x]],dfn[x]]\) 这一区间问有没有某种颜色 相当于问某种颜色有没有至少一个在这个区间内 直接 ...
分类:
其他好文 时间:
2021-01-25 11:14:34
阅读次数:
0
第1章 Redis初识 Redis 是什么 开源 基于键值的存储服务系统 多种数据结构 strings hash linked list sets sorted sets 高性能、功能丰富 Redis 的特性 速度快 持久化 多种数据结构 支持多种编程语言 功能丰富 简单 主从复制 高可用、分布式 ...
分类:
其他好文 时间:
2021-01-25 11:08:42
阅读次数:
0
数据结构优化建图 有的时候我们需要将编号在 \([L, R]\) 中的每一个点都向编号在 \([L', R']\) 中的每一个点连边。这时暴力连边会使复杂度达到 \(O(n^2m)\) 的级别,因此我们需要对区间分块统一处理。 我们需要建立一棵入树和一棵出树。入树中的节点表示某些边可以连到区间中的任 ...
分类:
其他好文 时间:
2021-01-25 11:00:00
阅读次数:
0