一 学习小结 图的基本知识 1. 图分为无向图和有向图。若无向图有 n(n-1)/2 条边,则称之为无向完全图,若有向图有 n(n-1) 条弧,则称之为有向完全图 2. 带权图通常称为网 3. 度:顶点v的度指和v相关联的边的数目,记为TD(v) 入度:以v为头的弧的数目 出度:以v为尾的弧的数目 ...
分类:
其他好文 时间:
2019-05-19 11:59:21
阅读次数:
121
Master定理也叫主定理。它提供了一种通过渐近符号表示递推关系式的方法。应用Master定理可以很简便的求解递归方程。T(N)=a(N/b)+N^d其中n表示原始的样本量,a表示子过程发生的次数,n/b表示子过程的样本量,d表示除子过程其他的操作,一般为常量log(b,a)<d则递归算法复杂度为O(n^log(b,a))log(b,a)=d则递归算法复杂度为O(n^d*log(b,a))l
分类:
编程语言 时间:
2019-05-16 09:33:35
阅读次数:
120
【基本思想】 计数排序类似与桶排序,也是用空间换取了时间,计数排序要求数组必须在一个确定的区间内。 过程:1. 首先找出数组的最大值和最小值;2. 遍历数组,以数字作为键,该数字出现的次数作为值插入哈希表中;3. 在最小值到最大值这个区间内遍历哈希表,将数字反向插入数组中。 【算法复杂度】 计数排序 ...
分类:
编程语言 时间:
2019-05-03 18:21:08
阅读次数:
161
题目 题目:输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,。 解析 思路1 这一题应用堆排序算法复杂度只有O(nlog k),堆是完全二叉树的一种,最大堆就是最上面的数是最大的该方法基于二叉树或者堆来实现,首先把数组前k个数字 ...
分类:
编程语言 时间:
2019-05-02 17:09:01
阅读次数:
169
1. 算法概念 algorithm:一个计算过程,解决问题的方法 程序设计=数据结构+算法 输入→算法→输出 数据结构就是关系 2. 时间复杂度 用来估计算法运行时间的一个式子,一般来说时间复杂度高的算法比复杂度低的算法慢 2.1 一些例子: 2.2 时间复杂度排序 2.3 快速判断算法复杂度 确定 ...
分类:
编程语言 时间:
2019-04-22 15:19:51
阅读次数:
181
1.单向链表的原地反转 2.消除字符串中成对的括号,必须成对匹配,否则打印error 3.将长度为a的单向链表链接到长度为b的单向链表,算法复杂度是 A. O(blogb) B. O(b) C.O(a*b) D. O(logb) ...
分类:
其他好文 时间:
2019-04-15 17:57:34
阅读次数:
154
算法分析 算法表示: 扩展资料: 算法复杂度分为时间复杂度和空间复杂度。 其作用: 时间复杂度是指执行算法所需要的计算工作量; 而空间复杂度是指执行这个算法所需要的内存空间。(算法的复杂性体现在运行该算法时的计算机所需资源的多少上,计算机资源最重要的是时间和空间(即寄存器)资源,因此复杂度分为时间和 ...
分类:
编程语言 时间:
2019-04-14 23:02:33
阅读次数:
270
【基本思想】 把待排序的记录按其关键码值的大小逐个插入到一个已经排好序的有序序列中,直到所有的记录插入完为止,得到一个新的有序序列。 【基本思想】 【算法复杂度】 时间复杂度(平均)时间复杂度 (最坏)时间复杂度(最好)空间复杂度稳定性 O(n^2) O(n^2) O(n) O(1) 稳定 时间复杂 ...
分类:
编程语言 时间:
2019-03-31 23:16:01
阅读次数:
195
JUly的文章:从头到尾彻底理解KMP KMP算法: 复杂度:线性 PMT数组:PMT中的值是字符串的前缀集合与后缀集合的交集中最长元素的长度。 next数组:是将PMT数组向后偏移一位得到的数组。 基于next数组进行匹配。 next数组的求法:模式串自己和自己匹配,用递推的方式,基于next[1 ...
分类:
编程语言 时间:
2019-03-27 11:04:32
阅读次数:
155
关于android各种sensor的思考(Accelerometer,Magnetometer,Gyroscope)芯片选型主要考虑方面key-parameter:1)Powerperformance功耗,不仅仅是芯片本身的功耗(这个一般很小),更大的功耗是这个driver和其daemon(algorithmlibrary)的算法复杂度问题,越复杂,越需要大量的MIPS(兆指令每秒),cpu频率要
分类:
移动开发 时间:
2019-03-24 00:03:47
阅读次数:
293