线性查找(Linear Search): 时间复杂度:O(n) 二分查找(Binary Search): ...
分类:
编程语言 时间:
2017-03-11 21:45:43
阅读次数:
208
在线性时间内非递归的求数组的最大连续子数组(连续和最大的子数组)。 题目给出思路为数组A[1...j+1]的最大和子数组,有两种情况:a) A[1...j]的最大和子数组; b) 某个A[i...j+1]的最大和子数组,但思考很久没有理解如何用这个思路设计线性时间算法,希望有人能给予指点。 (i点是 ...
分类:
编程语言 时间:
2016-11-02 23:41:34
阅读次数:
296
对 NP-Hard问题和NP-Complete问题的一个直观的理解就是指那些很难(很可能是不可能)找到多项式时间算法的问题。因此一般初学算法的人都会问这样一个问题:NP-Hard和NP-Complete有什么不同?简单的回答是根据定义,如果所有NP问题都可以多项式归约到问题A,那么问题A就是 NP- ...
分类:
其他好文 时间:
2016-10-27 20:18:28
阅读次数:
323
http://www.cnblogs.com/jiel/p/5852591.html 众所周知求一个图的哈密顿回路是一个NPC问题: In the mathematical field of graph theory, a Hamiltonian path (or traceable path) i ...
分类:
编程语言 时间:
2016-09-19 01:10:02
阅读次数:
252
散列表(也叫哈希表),是根据关键码值直接进行访问的数据结构,也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。 - 数据结构中,有个时间算法复杂度O(n)的概念来衡量某种算法在时间效率上的优劣。哈希表的理想算法复杂度为O(1 ...
分类:
其他好文 时间:
2016-08-21 09:42:53
阅读次数:
144
题目描述 输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,。 思路 O(n)时间算法,只有可以修改输入数组时可用。 可以基于 Partition 函数来解决这个问题。如果基于数组的第k个数字来调整,使得比第k个数字小的所有数字都 ...
分类:
其他好文 时间:
2016-08-18 11:14:34
阅读次数:
192
什么是伪多项式? 当一个算法的最坏时间复杂度是依据输入的数量级的时候,我们就称算法的时间复杂偶是伪多项式时间(给一个wiki上的解释可能更好理解 若一个数值算法的时间复杂度可以表示为输入数值规模N的多项式,但其运行时间与输入数值规模N的二进制位数呈指数增长关系,则称其时间复杂度为伪多项式时间。这是由 ...
分类:
编程语言 时间:
2016-04-07 08:23:02
阅读次数:
229
编程的根本:顺序、分支和循环。 * 程序=算法+结构。 * 编程的第一要务是先把事情分析清楚,事件先后的逻辑关系和依赖关系搞清楚,然后再去代码实现。 * 积极工作和勤于思考都要占时间。 * 算法是对一个程序的逻辑实现的描述,而结构是逻辑实现所依附的数据实体。 * 在所有的算法描述中,有且仅有三种执....
分类:
其他好文 时间:
2015-06-17 11:19:48
阅读次数:
110
最近一直在处理交通数据,有时间、车牌,经过的路口地址,数据量较大,本篇针对各车经过的路口时间先后顺序,生成贵阳交通的可通行有向图,即相连的交通路口间是否是双向通行、单向通行。
一、关于数据的说明
车牌号,路口地址都是字符串 时间是日期时间格式数据量大概有680万
二、原始算法代码
rm(list=ls(all=TRUE))
gc()
library(RODBC)
channel=...
分类:
编程语言 时间:
2015-06-05 10:15:07
阅读次数:
247