本文档实现了单链表,通过一次遍历找到单链表中倒数第n个节点,要求不允许使用双向链表;不允许修改原始单链表;可使用额外的辅助空间,但是辅助空间的数目必须最小,不能和n有关。并且给出了测试数据:使用1-1000的整数形成单链表,要求查找倒数第200个元素。 对任意给定的一个自然数n(10≤n≤1000),将分母≤n的不可约的真分数按照升序排列,并且在第一个分数前面加上数0/1,在最后一个分数后面加上数1/1,这个序列被称之为n级法雷序列,,以Fn表示。 例如:F8为:0/1、1/8、1/7、1/6、1/5、1/4、2/7、1/3、3/8、2/5、3/7、1/2、4/7、3/5、5/8、2/3、5/7、3/4、4/5、5/6、6/7、7/8、1/1 要求:给出一个n就能求出由n生成的法雷序列。 存储方式是单链表形式,不允许使用STL容器;程序中为整数操作,不允许出现实数的比较;结果输出到文件中。 利用哈夫曼编码进行对已有文件进行重新编码可以大大提高减小文件大小,减少存储空 间。但是,这要求在首先对一个现有文件进行编码行成新的文件,也就是压缩。在文件使用时,再对压缩文件进行解压缩,也就是译码,复原原有文件。试为完成此功能,写一个压缩解压缩软件。 一个完整的系统应具有以下功能: (1)压缩准备。读取指定被压缩文件,对文件进行分析,建立哈夫曼树,并给出分析结果 (包括数据集大小,每个数据的权值,压缩前后文件的大小),在屏幕上输出。 (2)压缩。利用已建好的哈夫曼树,对文件进行编码,并将哈夫曼编码及文件编码后的数 据一起写入文件中,形成压缩文件(*.Haf)。 (3)解压缩。打开已有压缩文件(*.Haf),读取其中的哈夫曼编码,构建哈夫曼树,读取其 中的数据,进行译码后,写入文件,完成解压缩。 (4)程序使用命令行方式运行 压缩命令 :SZip A Test.Haf 1.doc 解压缩命令:SZip X Test.Haf 2.doc 或 SZip X Test.Haf 用户输入的命令不正确时,给出提示。 (5)使用面向对象的思想编程,压缩/解压缩、哈夫曼构建功能分别构建类实现。
2021-09-25 14:20:39 496KB 压缩,法雷
1
分别用C和C++实现了单向链表(创建链表,插入数据、获取指定位置的数据、删除指定位置的数据...),如果在使用中觉得api不够用可以进行扩展;其中包含测试。
2021-09-25 13:30:38 551KB 数据结构 C/C++ 单向链表
1
程序员面试中经常遇到的链表逆置问题,采用C++编程实现。
2021-09-25 12:27:28 875KB 单向链表逆置
1
内存中一片连续空间(不妨假设地址从1到m),提供给两个栈S1和S2使用,怎样分配这部分存储空间,使得对任一个栈,仅当这部分空间全满时才发生上溢。
2021-09-24 15:24:53 2KB 双链表 结点 上溢
1
在linux环境下已测试,放心使用,这个是根据stanford cs library的linked list文章里的代码敲出来的
2021-09-24 11:25:48 14KB linked list 详解 链表
1
取单链表倒数第k个元素,包括算法描述、算法思想,算法实现等
2021-09-23 16:03:41 7KB 链表 倒数k个元素
1
自己写的链表,并用链表解决了约瑟夫环问题,大家给个意见,主要是链表
2021-09-23 15:16:44 2KB c++ 链表 约瑟夫
1
C语言中“链表”教学探讨.pdf
2021-09-20 17:04:41 460KB C语言 开发技术 编程技术 参考文献
这是一个带有头结点的链表,实现了链表的创建,翻转和销毁。并在main()函数中举例测试。
2021-09-20 14:54:13 1KB 翻转链表
1
c++实现链表完整代码,可直接使用,经测试可在c++环境下正常编译运行。
2021-09-20 12:06:47 3KB c++ 链表 代码
1