这道题中要求时间复杂度为O(n),首先我们可以知道的是,如果先对数组排序再计算其最长连续序列的时间复杂度是O(nlogn),所以不能用排序的方法。我一开始想是不是应该用动态规划来解,发现其并不符合动态规划的特征。最后采用类似于LRU_Cache中出现的数据结构(集快速查询和顺序遍历两大优点于一身)来...
分类:
其他好文 时间:
2014-04-28 10:21:19
阅读次数:
1003
iOS开发中经常会用到许多第三方开源类库,比如AFNetworking、FMDB、JSONKit等等,使用CocoaPods这个工具就能很方便得对工程中用到的类库进行管理,包括自动下载配置以及更新。
首先需要下载安装CocoaPods,系统要求有ruby环境,至少OS X 10.9以后是自带rub....
分类:
其他好文 时间:
2014-04-28 09:22:27
阅读次数:
585
这里,我并不打算引起语言争论的口水仗,我并不是什么大牛,对语言的造诣也不深,只是想通过自己实际的经历,来说说为什么我在项目中选择go。
其他语言的经历
C++
在接触go之前,我已经有多年的c++开发经验。主要用在游戏服务端引擎开发以及P2P上面,那可是一段痛并快乐的时期,以至于我看到任何的程序钉子问题都觉得可以用c++这把锤子给敲定。但是对于互联网项目开发来说,除非你的团队整体的c++...
分类:
编程语言 时间:
2014-04-27 19:16:29
阅读次数:
655
1.先对文件内容排序:cat 1.txt |sort > 2.txt 保存到2.txt中
2.使用vim打开2.txt 执行替换命令:
替换空格:%s/ //g
替换tab:%s/^I//g (注意:^I 是直接按键盘是的tab键)
替换$: %s/^M//g (注意:^M 是按ctrl+v 再按Enter键)
3.cat 2.txt | uniq > 3.txt
本文为...
分类:
其他好文 时间:
2014-04-27 19:07:00
阅读次数:
544
对于没有排序功能的集合来说,都可以使用java.util.Collections.sort()方法进行排序,它除了集合对象以外,还需要提供一个比较器。如果列表中的元素全部都是相同的类型,并且这个类实现了Comparable接口,就可以简单的调用Collections.sort()方法,如果这个类没有实现comparable接口,那么可以创建一个比较器传递一个Comparator实例作为Sort()...
分类:
其他好文 时间:
2014-04-27 19:03:01
阅读次数:
491
迅雷和qq旋风下载,有加速和离线功能,很方面,我是在网上看到的原始地址和迅雷地址,qq旋风地址的转化原理,然后用python+pyqt写了一个客户端
原理:
迅雷: 迅雷下载地址="thunder://"+Base64编码("AA"+"真实地址"+"ZZ")
QQ旋风: qqdl="qqdl://"+Base64编码("真实地址")
import re
import base64
from...
分类:
编程语言 时间:
2014-04-27 18:52:06
阅读次数:
772
分析:这道题可以采用贪心算法。将节目按结束时间从小到大排序,然后判断能看几个节目。判断的方法是:这次要看的节目开始时间是否在上一个节目的结束时间之后,如果在之后,则可以看完,如果不在之后,就 pass 掉这次要看的节目,跳到下一个节目继续判断。例如排好序后:
第一个节目肯定可以看完;第二个节目开始时间在第一个节目结束时间之后,所以可以看完;第三四五个节目开始时间都在第二个节目结束时间之前,不能看完, pass 掉;第六个节目开始时间在第二个节目结束时间之后,可以看完;第七八个节目开始时间都在第六个节目结束时...
分类:
其他好文 时间:
2014-04-27 18:49:30
阅读次数:
576
时间限制:10000ms
单点时限:1000ms
内存限制:256MB
Description
Find a pair in an integer array that swapping them would maximally decrease the inversion count of the array. If such a pair exists, retur...
分类:
其他好文 时间:
2014-04-27 17:48:35
阅读次数:
508