踩坑记录:CDN 开启强制 https 之后返回重定向次数过多的问题

一、问题描述 搭了一个开源图床,因为备案的原因部署在海外。访问速度太慢准备上 CDN(有一个已备案的域名),但是在部署 CDN 的途中就出现了各种问题。鼓捣了几天终于解决了,记录下踩坑记录和解决方案。 软件环境: 图床是直接用 docker 部署了,没有再手动去折腾 lnmp 环境了,别人已经准备好的 docer 环 ... 阅读更多

排序算法五:堆排序

一、堆排序原理 通过最大堆的性质可以知道:一个堆中最大的元素总是在堆顶的,即数组下标 0 的位置。基于这一点,我们可以每次都把堆中的最大值提取出来,放到当前数组的后面。然后重新构建最大堆,重复这个过程,以此来完成一个数组的排序。 例如,一个已知的最大堆为: 把最大的元素 16 提取出来,放到最后。然后重新建 ... 阅读更多

数据结构之堆

一、堆 堆是一种数据结构,通常通常所说的堆即二叉堆。二叉堆是一个数组,可以被看成一个完全二叉树,如下图所示: 他在数组中的表现形式为: 通过数组很容易得到每个父节点和其子节点的关系,假设数组的起始下标为 0,那么有:

因此可以直接在程序 ... 阅读更多

排序算法七:计数排序

一、计数排序 其基本思想为:假设 n 个输入的元素中的每一个都是在 0 到 k 之间的一个整数,对于每一个输入元素 x,确定小于 x 的元素个数,直接把 x 放在它输出的数组中的位置上。例如有 17 个元素小于 x,则 x 就应该在数组的第 18 个位置上。当有几个元素相同时,这一方案就要略作修改,不能都放在同一个位置上。 计数排序需 ... 阅读更多