全触分布

最近想到一个问题,发现了一个有趣的分布,姑且叫其全触分布。可能这个分布已经有了名字,不过翻了一遍概率论的书,似乎没有看到有谈过这个分布。 初始问题 假设有两台服务器,各自有独立的缓存需要预热(即初始化缓存),而预热时只能通过相同的访问地址,访问负载均衡器之后,由负载均衡器等概率随机选择一台预热,问至 … 继续阅读全触分布

求数组的子数组之和的最大值

——尾递归的应用 这是《编程之美》中2.14节提出的一个问题,问题的描述为 一个有N个整数元素的一维数组(A[0], A[1], …, A[n-2], A[n-1]),这个数组有很多子数组,那么子数组之和的最大值是什么? 以往遇到这种问题的第一种思维模式也像书中的第一种解法一样去枚举出所 … 继续阅读求数组的子数组之和的最大值

尾递归的启示

——读《计算机程序的构造和解释》第一章第二小节所想 尾递归是指在过程调用中,递归调用过程本身的操作始终是过程的最后一步。举例来讲,计算阶乘的方法,根据定义,直接翻译成递归形式为 def factorial(n): if n == 1: return 1 else: return n * factor … 继续阅读尾递归的启示

像素密度和设备像素比

像素密度和设备像素比的概念事实上比想象中的复杂,希望这篇文章能够消除开发者和设计师们的疑虑和错误认知 显示器上常用的长度单位是像素(pixel),比如说一台显示器的分辨率是1280×800像素,一张照片的大小是1050×1500像素,一台照相机有300万像素。像素和物理上的长度单位不是等价的。物理上 … 继续阅读像素密度和设备像素比

公开密钥加密在SSH远程登录中的应用

一直以来,都在享受着SSH免密码登录的远端服务器的好处,但总觉得对背后的逻辑不是太清楚,或者说,根本没有细想过,因为网上充斥了大量的,如何做,却不告诉为什么,下一次再去做的时候,又费半天功夫,所以有必要熟悉完整的流程。近来有了“深入理解加密、解密、数字签名和数字证书”这篇文章做底子,SSH免密码登录 … 继续阅读公开密钥加密在SSH远程登录中的应用

数字签名在安卓包发布中的应用

安卓包发布前必须要有正式签名才能在应用商店发布,对照公开密钥基础设施的常规流程而言,安卓包签名仅是个子集,只有数字签名,不涉及加密。 数字签名中核心的要素是私有密钥、公钥证书、原始摘要和签名摘要。涉及的参与者有应用开发者、应用商店和用户(操作系统)。逐一了解了每个核心要素和参与者也就清楚了整个签名的 … 继续阅读数字签名在安卓包发布中的应用