数据结构定理
来源:互联网 发布:北京奥运会会徽知乎 编辑:程序博客网 时间:2024/06/10 19:40
1.
如果总是按一个乘法因子来增加数组长度,那么实施一系列线性表的操作所需要的时间与不用改变数组长度时相比,至多增加一个常数因子。
2 基数分解
把数分解成数字需要除法和取模操作:
对于一般的基数r,相应的分解式为:
X%r; (X%r^2)/r; (X%r^3)/r^@;
例如:
如果用基数10来分解则最低位到最高位为:
x%10; x%100/10; x%1000/100;
当使用基数r=n对0~n^c-1范围内的n个整数进行分解时,每个数可以分解出c个数字.因此,对n个数字,可以用c次range=n的箱子排序.因为c是一个常量,所以整个排序时间为O(cn)=O(n).
3.并查集
如果开始时有n个类,每个类有一个元素,则在执行u次合并操作以后:
一. 任何一个类的元素都不会超过u+1.
二. 至少存在n-2u个单元素类.
三. u < n
1次初始化和f次查找的复杂度为O(n+f).
1次初始化、u次合并操作和f次搜索的复杂度为O(n+ulogu+f).
阅读全文
0 0
- 数据结构定理
- 【数据结构】根据主定理,计算时间复杂度
- 定理
- 定理
- 算法与数据结构-离散数学之容斥定理
- 【数论定理】卢卡斯定理
- 威尔逊定理,费马小定理,欧拉定理
- 手表定理
- ramsey定理
- 模式定理
- 手表定理
- 模式定理
- 杜利奥定理
- 主定理
- 奈奎斯特定理
- 丑小鸭定理
- 费马小定理
- 欧拉大定理
- 地上有一个m行和n列的方格。一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格,但是不能进入行坐标和列坐标的数位之和大于k的格子。 例如,当k为18时,机器人能够进入方格
- Web Service 异常信息!
- 手动一步一步来制作备份Raspberry Pi树莓派SD卡的img映像文件(不用dd命令)
- linux 配置ssh无密码登录不起作用的解决方案
- Linux多核调度亲和性
- 数据结构定理
- Ubuntu 16.04 安装配置 Nginx 1.12.2
- android中关于屏幕适配的那些事。
- QTC++实现马士兵老师的网络版坦克大战
- centos虚拟机配置静态ip
- 基于tiny4412开发板的I2C子系统写法
- 【Java并发编程】深入分析ConcurrentHashMap(九)
- 在python中,利用GUI调用matlab应用程序
- ffmpeg hls.c分析