从两个已排序的数组中找到中位数,要求时间复杂度为log(m+n);
苦逼…各种被虐…C/C++、Python,三个版本。
[……]
从两个已排序的数组中找到中位数,要求时间复杂度为log(m+n);
苦逼…各种被虐…C/C++、Python,三个版本。
[……]
从不懂DP 到 一维DP 到 记忆化搜索 到 二维DP 到 滚动数组 到 双向DP…
好了 – 以上已经是我DP的极限了…PS.整篇代码都是C/C++ – Java学习者慎入
[……]
LL、LR、RL、RR四种旋转方式解析。
[……]
平衡二叉排序树——AVLTree
[……]
这里只讲 QuickSort(快排)、HeapSort(堆排)、MergeSort(归并)、ShellSort(希尔)。
[……]
欢迎访问TK Xiong Blog. Code & Algorithm.[……]
逆元:
对于正整数a和b,如果有a*x ≡ 1(mod n),那么把同余方程中x的最小正整数解叫做a模b的逆元.
拓展欧几里得:
扩展欧几里德算法是用来在已知a,b求解一组x,y,使它们满足贝祖等式: ax+by=gcd(a,b)=d(解一定存在,根据数论中的相关定理)。
当a和b互素时[……]
康托展开就是一种特殊的哈希函数。
公式:
X = an*(n-1)! + an-1*(n-2)! + …… + ai*(i-1)! + …… + a2*(1)! + a1*(0)!
其中,a[i] 为当前未出现的元素中,它排在第几个(从0开始计数)。 //不理解无妨,继续往后看样[……]