数据结构中的堆结构堆(Heap),有时候也是一种优先队列,其实现方式主要还是依托完美二叉树进行调整实现,我们对二叉树结构定义规则如下:二叉树要是完美二叉树任意子节点的权值不能比其父节点大(或小)从而我们可以叫这个数据结构叫堆(heap),并且我们定义堆顶为二叉树的根节点。需要注意的是上面的第 ...
Python 爬虫抓取网站 mp4 视频并且使用 tqdm 显示进度条下载视频读这篇文章之前可以先读好久之前发的一篇题为 《Python批量下载m3u8的切片影片》 的文章,里面说明了怎么分析 m3u8 文件并且批量下载 ts 视频片段。最近因为要看网课的原因,嫌弃网课网站带宽不足导致视频播放...
PHP 设置 header 强制直接下载文件的方法有时候当我们要让用户下载一些文件的时候,尤其是图片或者视频文件的时候,会遇到文件直接在浏览器打开预览而没有开始下载的情况。这种情况我们可以考虑通过一些设置来进行强制下载。首先如果是通过 a 超链接进行下载的话,可以将其进行如下设置<a h...
PHP 8.2 大更新PHP 官方在前不久发布了 PHP 8.2 的大更新,我粗浅地看了一下基本上没啥太过出彩的更新,基本上也就是常规的写 Class 比较方便了,然后支持了一些新的特性了,新增了一些不会用到的函数并且淘汰了一些也是不会用到的函数。不过这个随机数生成器还是让我比较感兴趣的,所以...
MD5哈希的具体原理首先我们假设我们将要对信息 $a$ 进行MD5哈希处理,我们知道每个字节有 8 个比特,我们可以把 $a$ 分成若干个 512 比特的分组,最后的分组补一个 0x80 的字符后,若该分组长度不等于 448 比特,则一直补字符 0x00 直到最后的分组为 448 比特,即若最...
修改 pip 源有些时候我们用国内的云服务器,用系统自带安装的 python pip 源下载就会很慢,甚至是超时,这个时候我们可以通过修改 pip 源来改善这一问题,具体指令:pip config set global.index-url https://mirrors.aliyun.com/...
题目思路这题我只能说想了没多久就想出来了,一开始看到这个题目的时候下意识想要用数组分组然后再合并的一个做法,但是想了一想那样时间复杂度好像有点高来着,这题应该有一些更优的做法,然后就在纸上自己捣鼓了一下,发现这个问题其实用循环链表就能很好的去解决了,时间复杂度也能到 O(qi) 的程度。首先就...
DES 算法的具体原理首先我们需要知道 DES 加密解密算法的具体原理以及流程,我们才能在 Python 中将其实现。DES 加密解密其实就是一种分组密码的实现,并且通过多轮代换以及异或操作最终完成加密,每次加密都有 8 个 S 合将其进行分组加密,详细可参见清华大学出版社的《现代密码学》第五...
跳跃游戏 II - C++力扣45题题目链接:https://leetcode.com/problems/jump-game-ii/description/解题思路这题算是中等难度吧,就是一眼能看出来解决方法的程度,但是优化上还是得多费一点脑子,下面的代码也不是最优解。基本上是一眼能看出来用 ...
水果成篮 - C++力扣904题题目链接:https://leetcode.com/problems/fruit-into-baskets/description/解题思路这题其实也是一个类似于滑动窗口的问题,但是其实还是模拟一边就能过,难度算是中等偏下吧,没什么太大的难点。首先我们先弄一个哈...