练习小项目
李兆龙的博客
Distributed Systems & NoSQL & Linux Kernel / eBPF & Chaos Engineering
展开
-
改进std::string
String因为std::string中有一些地方为了保证空间与时间的平衡从而采用了在时间上较为保守的方式 所以我在此基础上略微的打破了这个平衡 使得更追求时间效率.做了什么char_traits<_CharT>中的比较方法较为低效 为逐字符比较 导致basic_string中find系方法较为低效 为O(n2), 遂改为内部使用strstr()函数,也可改为kmp,两者效率差...原创 2020-01-07 16:09:19 · 338 阅读 · 1 评论 -
简单实现LZ77压缩算法
引言因为哈弗曼编码对于大文件的压缩有很大的局限性 且压缩比十分有限 所以决定根据LZ77算法写一个简单的压缩库组成因为时间较为紧张 目前完成了最基础的ZIP算法的编写 即根据LZ77算法(滑动窗口压缩)先对压缩文件得到一个数据三元组 然后针对数字出现的频率再进行哈弗曼算法 为了更好的压缩比 我并没有先参考的资料中的方法 采用了建三棵哈弗曼树的做法效率对于一般的文件 压缩比可以达到百分之4...原创 2020-01-07 16:18:43 · 1119 阅读 · 0 评论 -
TTMS剧院票务管理系统(xupt)
虽然课设已经过去很久 但还是想来说说这个第一次写的比较大的程序,整体难度其实并不高,就是项目进行到后期时多文件之间的联系做要花费些时间首先来说说我们团队实现了哪些功能项目手册上功能实现全部...原创 2019-08-11 19:10:01 · 3135 阅读 · 3 评论 -
聊天室(2)-项目开发文档-李兆龙
12原创 2019-08-27 17:00:34 · 790 阅读 · 0 评论 -
聊天室(1)-项目分析-李兆龙
引言聊天室是大一暑假的最后一个项目,同时也是比较值得我们反复思考琢磨的一个项目,因为它其中包含了大量新的知识点的运用比如多路复用,线程池,数据库,Wireshark等等,以及对于老知识点的温故,比如线程与进程的使用等,所以这是每一个人都应该认真对待的一个项目。在假期之前我们曾问学长,TTMS与聊天室相比哪一个更加有挑战性,学长告诉我们TTMS更难,当时完成TTMS以后便觉得假期可能不会那么紧张,...原创 2019-08-27 17:00:54 · 876 阅读 · 0 评论 -
聊天室(0)-项目源码-李兆龙
引言假期生活马上就要结束了 其中最有意思的一个项目就要数这个聊天室 在进行这个项目的过程中接触到了很多新的知识和以前没有注意到的隐晦的知识点 所以分为三篇对项目进行一个总结 方便日后查阅和反思项目源码项目分析项目文档Data.h#include <stdlib.h>#include <assert.h>#define SERV_POT ...原创 2019-08-27 17:02:19 · 907 阅读 · 1 评论