简介

本文主要通过实际例子介绍 segment tree 这种数据结构及其应用。以 LeetCode 上的一道题目 307. Range Sum Query - Mutable 为例说明。

阅读全文 »

排序是非常常见的操作,常见的排序算法的时间复杂度一般为 \(O(n^2)\)(冒泡、选择、插入)或 \(O(nlogn)\)(快排、归并等)。虽然这些算法对于编程人员来说是基础,但是在实际工程中往往会使用语言内置的排序函数,主要是考虑到编程效率和自己编写排序函数时涵盖情况不全的问题。因此本文主要讲述 python 中的内置函数。

阅读全文 »

Binary Indexed Trees(中文名为树状数组,下文简称为 BIT)是一种特殊的数据结构,可多用于高效计算数列的前缀和, 区间和。对于长度为 n 的数组,它可以以 \(O(logn)\) 的时间得到任意前缀和 $ {_{i=1}^{j} a [i],1<=j<=N}$,并同时支持在 $ O (log n)$ 时间内支持动态单点值的修改。空间复杂度 \(O(n)\)

阅读全文 »

由于某些网站对会对爬虫做限制,因此常常需要通过代理将爬虫的实际 IP 隐蔽起来,代理也有分类,如透明代理,高匿代理等。本文主要讲述如何获取代理 IP,并且如何存储和使用。

阅读全文 »
0%