数据结构与算法
十麓
java爱好者
展开
-
数据结构与算法笔记
一、数据结构与算法线性结构:数组、队列、链表和栈非线性结构:二维数组、多维数组、广义表、树结构、图结构三、稀疏数组和队列3.1.稀疏数组因为该二维数组的很多值是默认值 0, 因此记录了很多没有意义的数据.->稀疏数组3.1.2.应用实例使用稀疏数组,来保留类似前面的二维数组(棋盘、地图等等)把稀疏数组存盘,并且可以从新恢复原来的二维数组数整体思路分析[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Kd4H3Jdv-16455248361原创 2022-02-22 18:15:16 · 571 阅读 · 0 评论 -
使用贪心算法解决集合覆盖问题
直接上代码,思路可以在代码注释中体现出来public class GreedyAlgorithm { public static void main (String[] args) { //创建广播电台 放到Map中 HashMap<String, HashSet<String>> broadcasts = new HashMap<>(); //将各个电台放入到broadcasts中 HashSet原创 2022-02-14 14:48:07 · 286 阅读 · 0 评论 -
使用哈夫曼编码解压出现数组越界的问题
在用文件流解压文件的时候,可能会出现数组越界的问题,是因为在解压最后一个字节的时候,如果是正数并且是以011或者0011这样开头的,如果没有经过处理,直接解压出来的会把前面的0弄掉,如果解决呢?//对哈夫曼编码进行解码 /** * @param huffmanCodes 哈夫曼编码表 map * @param huffmanBytes 哈夫曼编码得到的字节数组 * @return */ private static byte[] decode (Map&l.原创 2022-01-25 23:42:12 · 418 阅读 · 0 评论