这是学校数据结构与算法设计课程的PJ,旨在实现类似zip软件的压缩与解压功能。
我在几乎有空就在写代码的情况下两周完成了这个项目。
目前网上能够搜索到的资料对于单个文件和文本文件的压缩与解压较多,而对文件夹与大文件的压缩与解压较少。
所以想在这里把自己的一些想法和思路写下来,供大家交流与参考。
因为自己目前正在读大二,这也是自己写的第一篇CSDN博客,之前只学过C与C++,java是纯自学的,并且这也是用java写的第一个PJ,所以写得比较烂,希望有前辈能够指点指点!
2024/7/25 0:11:32 11KB 哈夫曼算法 java
1
文本处理是现代化计算机应用的重要领域。
文本由字符组成,字符以某种编码形式存储在计算机中。
每个字符的编码可以是相等长度的,也可以是不等长度的。
我们熟知的ASCII编码是等长编码。
为了提高存储和处理文本的效率,在一些计算机应用场合,如数据通信,常采用不等长的编码,对常用的字符用较少的码位编码,不常出现的字符用较多的码位编码,从而减少文本的存储长度。
哈夫曼编码就是用于此目的的不等长编码方法。
当然,编码的对面就有译码。
本课题中,首先是构造哈夫曼树。
给定一组权值,以此作为叶结点的权值,可以构造多棵扩充二叉树,它们通常具有不同的加权路径长度。
其中具有最小加权路径长度的扩充二叉树,用于构造高效的不等长编码。
哈夫曼给出了构造具有最小加权路径长度的扩充二叉树的算法,称位哈夫曼算法。
用哈夫曼算法构造的扩充二叉树称为哈夫曼编码树或哈夫曼树。
当然,还有编码和译码部分。
本系统的前端开发工具是VisualC++6.0。
具有输入字符集大小及权值大小,构造哈夫曼树,并对用户输入的字符串进行编码以及译码还有退出四种功能。
本程序经过测试后,功能均能实现,运行稳定。
2023/11/3 6:12:14 2.52MB 哈夫曼树,编码,译码,权值
1
16进制10进制.txt32.txtasm.txtCrctable.txtC标志符命名源程序.txterre.txterre2.txtff.txtfor循环的.txtlist.logN皇后问题回溯算法.txtping.txtre.txtsource.txtwinsock2.txtww.txt万年历.txt万年历的算法.txt乘方函数桃子猴.txt乘法矩阵.txt二分查找1.txt二分查找2.txt二叉排序树.txt二叉树.txt二叉树实例.txt二进制数.txt二进制数2.txt余弦曲线.txt余弦直线.txt傻瓜递归.txt冒泡排序.txt冒泡法改进.txt动态计算网络最长最短路线.txt十五人排序.txt单循环链表.txt单词倒转.txt单链表.txt单链表1.txt单链表2.txt单链表倒序.txt单链表的处理全集.txt双链表正排序.txt反出字符.txt叠代整除.txt各种排序法.txt哈夫曼算法.txt哈慢树.txt四分砝码.txt四塔1.txt
2023/9/8 6:21:24 213KB 经典数据结构
1
16进制10进制.txt32.txtasm.txtCrctable.txtC标志符命名源程序.txterre.txterre2.txtff.txtfor循环的.txtlist.logN皇后问题回溯算法.txtping.txtre.txtsource.txtwinsock2.txtww.txt万年历.txt万年历的算法.txt乘方函数桃子猴.txt乘法矩阵.txt二分查找1.txt二分查找2.txt二叉排序树.txt二叉树.txt二叉树实例.txt二进制数.txt二进制数2.txt余弦曲线.txt余弦直线.txt傻瓜递归.txt冒泡排序.txt冒泡法改进.txt动态计算网络最长最短路线.txt十五人排序.txt单循环链表.txt单词倒转.txt单链表.txt单链表1.txt单链表2.txt单链表倒序.txt单链表的处理全集.txt双链表正排序.txt反出字符.txt叠代整除.txt各种排序法.txt哈夫曼算法.txt哈慢树.txt四分砝码.txt四塔1.txt四塔2.txt回文.txt图.txt圆周率.txt多位阶乘.txt多位阶乘2.txt大加数.txt大小倍约.txt大整数.txt字符串查找.txt字符编辑.txt字符编辑技术(插入和删除).txt完数.txt定长串.txt实例1.txt实例2.txt实例3.txt小写数字转换成大写数字1.txt小写数字转换成大写数字2.txt小写数字转换成大写数字3.txt小字库DIY-.txt小字库DIY.txt小孩分糖果.txt小明买书.txt小白鼠钻迷宫.txt带头结点双链循环线性表.txt平方根.txt建树和遍历.txt建立链表1.txt扫描码.txt挽救软盘.txt换位递归.txt排序法.txt推箱子.txt数字移动.txt数据结构.txt数据结构2.txt数据结构3.txt数组完全单元.txt数组操作.txt数组递归退出.txt数组递归退出2.txt文件加密.txt文件复制.txt文件连接.txt无向图.txt时间圈套.txt杨辉三角形.txt栈单元加.txt栈操作.txt桃子猴.txt桶排序.txt检出错误.txt检测鼠标.txt汉字字模.txt汉诺塔.txt汉诺塔2.txt灯塔问题.txt猴子和桃.txt百鸡百钱.txt矩阵乘法动态规划.txt矩阵转换.txt硬币分法.txt神经元模型.txt穷举搜索法.txt符号图形.txt简单数据库.txt简单计算器.txt简单逆阵.txt线性顺序存储结构.txt线索化二叉树.txt绘制圆.txt编随机数.txt网络最短路径Dijkstra算法.txt自我复制.txt节点.txt苹果分法.txt螺旋数组1.txt螺旋数组2.txt试题.txt诺汉塔画图版.txt读写文本文件.txt货郎担分枝限界图形演示.txt货郎担限界算法.txt质因子.txt输出自已.txt迷宫.txt迷宫问题.txt逆波兰计算器.txt逆矩阵.txt逆阵.txt递堆法.txt递归桃猴.txt递归车厢.txt递推.txt逻辑移动.txt链串.txt链栈.txt链表十五人排序.txt链表(递归).txt链队列.txt队列.txt阶乘递归.txt阿姆斯特朗数.txt非递归.txt顺序栈.txt顺序表.txt顺序队列.txt骑士遍历1.txt骑士遍历2.txt骑士遍历回逆.txt黑白.txt
1
16进制10进制.txt32.txtasm.txtCrctable.txtC标志符命名源程序.txterre.txterre2.txtff.txtfor循环的.txtlist.logN皇后问题回溯算法.txtping.txtre.txtsource.txtwinsock2.txtww.txt万年历.txt万年历的算法.txt乘方函数桃子猴.txt乘法矩阵.txt二分查找1.txt二分查找2.txt二叉排序树.txt二叉树.txt二叉树实例.txt二进制数.txt二进制数2.txt余弦曲线.txt余弦直线.txt傻瓜递归.txt冒泡排序.txt冒泡法改进.txt动态计算网络最长最短路线.txt十五人排序.txt单循环链表.txt单词倒转.txt单链表.txt单链表1.txt单链表2.txt单链表倒序.txt单链表的处理全集.txt双链表正排序.txt反出字符.txt叠代整除.txt各种排序法.txt哈夫曼算法.txt哈慢树.txt四分砝码.txt四塔1.txt四塔2.txt回文.txt图.txt圆周率.txt多位阶乘.txt多位阶乘2.txt大加数.txt大小倍约.txt大整数.txt字符串查找.txt字符编辑.txt字符编辑技术(插入和删除).txt完数.txt定长串.txt实例1.txt实例2.txt实例3.txt小写数字转换成大写数字1.txt小写数字转换成大写数字2.txt小写数字转换成大写数字3.txt小字库DIY-.txt小字库DIY.txt小孩分糖果.txt小明买书.txt小白鼠钻迷宫.txt带头结点双链循环线性表.txt平方根.txt建树和遍历.txt建立链表1.txt扫描码.txt挽救软盘.txt换位递归.txt排序法.txt推箱子.txt数字移动.txt数据结构.txt数据结构2.txt数据结构3.txt数组完全单元.txt数组操作.txt数组递归退出.txt数组递归退出2.txt文件加密.txt文件复制.txt文件连接.txt无向图.txt时间圈套.txt杨辉三角形.txt栈单元加.txt栈操作.txt桃子猴.txt桶排序.txt检出错误.txt检测鼠标.txt汉字字模.txt汉诺塔.txt汉诺塔2.txt灯塔问题.txt猴子和桃.txt百鸡百钱.txt矩阵乘法动态规划.txt矩阵转换.txt硬币分法.txt神经元模型.txt穷举搜索法.txt符号图形.txt简单数据库.txt简单计算器.txt简单逆阵.txt线性顺序存储结构.txt线索化二叉树.txt绘制圆.txt编随机数.txt网络最短路径Dijkstra算法.txt自我复制.txt节点.txt苹果分法.txt螺旋数组1.txt螺旋数组2.txt试题.txt诺汉塔画图版.txt读写文本文件.txt货郎担分枝限界图形演示.txt货郎担限界算法.txt质因子.txt输出自已.txt迷宫.txt迷宫问题.txt逆波兰计算器.txt逆矩阵.txt逆阵.txt递堆法.txt递归桃猴.txt递归车厢.txt递推.txt逻辑移动.txt链串.txt链栈.txt链表十五人排序.txt链表(递归).txt链队列.txt队列.txt阶乘递归.txt阿姆斯特朗数.txt非递归.txt顺序栈.txt顺序表.txt顺序队列.txt骑士遍历1.txt骑士遍历2.txt骑士遍历回逆.txt黑白.txt
2016/7/21 4:24:10 223KB 数据结构
1
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡