题目:给定一个数组和一个目标值,返回所有不重复的3元组,每个元组的和等于目标值,且元组中,各元素按飞递减顺序。
先对其进行排序,在利用2sum,在2sum中,要求和为0,这里可以将数组中的元素的相反数作为和,找到另外两个数,那么三者的和为0。
在2sum中,经过排序后,总的时间复杂度是排序算法的复杂度占主导O(NlogN),在查找时是遍历数组,复杂度为O(n)。那么在3sum中,首先进行排序,...
分类:
其他好文 时间:
2014-05-18 14:02:28
阅读次数:
249
含有n个部件的目标模型可以形式上定义为一个(n+2)元组:(F0,P1,..., Pn, b),F0是根滤波器,Pi是第i个部件的模型,b是表示偏差的实数值。每个部件模型用一个三元组定义:(Fi,vi, di),Fi是第i个部件的滤波器;vi是一个二维向量,指定第i个滤波器的锚点位置(anchor position,即未发生形变时的标准位置) 相对于根的坐标;di是一个四维向量,指定了一个二次函数的参数,此二次函数表示部件的每个可能位置相对于锚点位置的变形花费(deformation cost)。...
分类:
其他好文 时间:
2014-05-18 05:10:38
阅读次数:
353
元组
元组不能修改;(可能你已经注意到了:字符串也不能修改。)
创建元组的语法很简单:如果用逗号分隔了一些值,那么你就自动创建了元组。
>>> 1,3,'ab'
(1, 3, 'ab')
元组也是(大部分时候是)通过圆括号括起来的。
>>> (1,3,'13')
(1, 3, '13')
空元组可以用没有内容的两个圆括号来表示。
如何实现包括一个值的元组呢?
...
分类:
编程语言 时间:
2014-05-15 23:38:44
阅读次数:
496
序列-2
序列相加
通过加号对列表进行连接操作;
列表
>>> [1,3,4]+[2,5,8]
[1, 3, 4, 2, 5, 8]
字符串
>>> '134'+'258'
'134258'
元组
>>> (1,2,3)+(2,5,8)
(1, 2, 3, 2, 5, 8)
元素数据类型不同的列表
>>> [[1,3],[3,9]]+[[2,2],'abc']
[[1,...
分类:
编程语言 时间:
2014-05-15 05:31:56
阅读次数:
425
Python在heap中分配的对象分成两类:可变对象和不可变对象。所谓可变对象是指,对象的内容是可变的,例如list。而不可变的对象则相反,表示其内容不可变。
不可变对象:int,string,float,tuple 可变对象 :list,dictionary 一、不可变对象 由于Python中的变...
分类:
编程语言 时间:
2014-05-13 20:07:37
阅读次数:
481
网络层的“ip地址”可以唯一标识网络中的主机,而传输层的“协议+端口”可以唯一标识主机中的应用程序(进程)。这样利用三元组(ip地址,协议,端口)就可以标识网络的进程了,网络中的进程通信就可以利用这个标志与其它进程进行交互。Unix/Linux基本哲学之一就是“一切皆文件”,都可以用“打开open
...
分类:
其他好文 时间:
2014-05-12 20:45:35
阅读次数:
316
1. 序列:seq[n], seq[x:y], seq * n序列重复n次,切片, 序列翻转
s=”abcde", s[::-1]="edcba" 内建函数:1. 类型转换: list(iter), str(obj), unicode(obj),
tuple(iter) , 2. len(seq)....
分类:
编程语言 时间:
2014-05-12 13:57:06
阅读次数:
424
一直没有点动态树这个科技树,因为听说只能用Splay,用Treap的话多一个log。有一天脑洞大开,想到也许Treap也能从底向上Split。仔细思考了一下,发现翻转标记不好写,再仔细思考了一下,发现还是可以写的,只需要实时交换答案二元组里的两棵树,最后在吧提出来的访问节点放回去就行了。本着只学.....
分类:
其他好文 时间:
2014-05-11 22:56:42
阅读次数:
605
1. 标准类型 Integer,Boolean, Long integer, Floating
point real number, Complex number, String, List, Tuple, Dictionary 其他内建类型: 类型,
Null对象(None) 文件,集合,函数.....
分类:
其他好文 时间:
2014-05-10 00:20:30
阅读次数:
336
元组(tuple)是有序对象的集合,其中元素由逗号隔开,圆括号包围。
就像一个不可以改变的列表,但具有不可变性,跟字符串类似。
常见操作
Tupletest = (1,2,3,4)
>>>len(Tupletest)
4
>>>Tupletest + (5,6)
(1,2,3,4,5,6)
>>>Tupletest.index(4) #返回索引值
3
...
分类:
编程语言 时间:
2014-05-09 22:11:26
阅读次数:
267