月度归档:2017年12月

SDWebImage 源代码剖析-网络部分

前面两篇博文中,简要对SDWebImage的缓存部分多线程部分进行了分析。建议在阅读本篇内容前先看下缓存策略那篇,以对SDWebImage的基本内容有所了解。在本篇中,我们将对它的网络策略进行分析。我们知道SDWebImage的主要功能就是从远程主机上下载图片,所以前面的几个策略都是为这一目的提供支持的,而网络策略的好坏将直接决定库的性能。不过SDWebImage以GitHub上接近20000的star数向我们证明了它不俗的实力,下面就让我们一起看看吧。 继续阅读SDWebImage 源代码剖析-网络部分

LeetCode-238-Product of Array Except Self

这个题目的题意非常简单:传入一个数组,然后返回一个新数组,这个新数组中的每个元素是由原来数组的除了对应位置上的以外元素相乘得到的。比如传入[1,2,3,4],返回[24, 12, 8, 6]。但是有个额外要求,那就是算法的时间复杂度必须是O(n),空间复杂度是O(n)或O(1)。 继续阅读LeetCode-238-Product of Array Except Self