Sort a linked list in O(n log n)
time using constant space complexity.
这道题目非常简短的一句话,给链表排序,看到nlogn,我们可以来简单复习一下排序。首先说一下这个nlogn的时间复杂度(根据决策树我们可以得出这个界限),是基于比较排序的最小上限,也就是说,对于没有一定范围情况的数据来说,最快的排序思路就是归并和快速排...
分类:
其他好文 时间:
2014-06-22 09:02:54
阅读次数:
250
最近调试的时候老是出现各种错误,一般都是内存错误,我无意间发现所有的全局变量出现问题,就是声明全局变量后,赋值的初值出现错误.
初值明明是0x12345674,最后变为了0xBA141234,出现了移位想象
测试代码
//内存测试,防止出现内存异常,主要表现为全局变量初始化有问题
#define MEM_TEST 0x12345678
u32 MemTest = MEM_TEST;
_i...
分类:
其他好文 时间:
2014-06-22 08:26:24
阅读次数:
197
已知 a,b (a>=0,b>=0)
求一组解 (x,y) 使得 (x,y)满足
gcd(a,b) = ax+by
注意求出的 x,y 可能为0或负数
代码中g = gcd(a,b);
LL extend_gcd (LL a , LL b , LL &x , LL &y) {
if (b == 0) {
x = 1LL;
y = 0;...
分类:
其他好文 时间:
2014-06-22 08:38:36
阅读次数:
186
明文保存密码的程序在很多方面容易造成密码的泄漏。虽然用户输入的密码一般时明文形式,但是应用程序必须保证密码不是以明文形式存储的。
限制密码泄漏危险的一个有效的方法是使用散列函数,它使得程序中可以间接的对用户输入的密码和原来的密码进行比较,而不需要保存明文或者对密码进行解密后比较。这个方法使密码泄漏的风险降到最低,同时没有引入其他缺点。
[加密散列函数]
散列函数产...
分类:
编程语言 时间:
2014-06-22 12:13:45
阅读次数:
251
一. 前言
最近在公司的项目中用到了定时任务, 本篇博文将会对TimerTask定时任务进行总结, 其实TimerTask在实际项目中用的不多, 因为它不能再指定时间运行, 只能让程序按照某一个频度运行.
二. TimerTask
JDK中Timer是一个定时器类, 它可以为指定的定时任务进行配置.
JDK中TimerTask是一个定时任务类, 该类实现了Run...
分类:
编程语言 时间:
2014-06-22 08:04:43
阅读次数:
350
今天状态不好,颈椎酸,头疼,哎,果然身体才是本钱,完成基本功能果断去睡觉.....
分类:
Web程序 时间:
2014-06-22 07:04:41
阅读次数:
241
...
分类:
其他好文 时间:
2014-06-22 11:47:52
阅读次数:
168
在写一此帮助说明类的文档时,截取的图片如果还有鼠标的指针形状,看起来就更直观更友好一些。接下来就讲一下如何在截图中包含鼠标指针形状。上一篇:C#软件开发实例.私人订制自己的屏幕截图工具(九)使用自定义光标,QQ截图时的光标添加结构CURSORINFO:[StructLayout(LayoutKind.Sequential)]
struct CURSORINFO
{
...
分类:
其他好文 时间:
2014-06-22 07:19:39
阅读次数:
202
目前全量索引17G,不到1300万document花费大约25分钟的时间(Lucene 4.0),吞吐量远远低于lucene nightly build宣称的170G/h的量。换用StandardAnalyzer,有34%的提高,比较下使用的KAnalyzer,mmseg4j1.9.2-snapshot,standardanalyzer,性能分别在1.7M/s,10M/s,20M/s这样量级。所以...
分类:
其他好文 时间:
2014-06-22 08:37:18
阅读次数:
201
1、错误描述
严重: ContainerBase.addChild: start:
org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/FoundationDatabase]]
a...
分类:
Web程序 时间:
2014-06-22 12:12:42
阅读次数:
257
0.前言
本文试图说明如何使用CJSON构造各种各样的JSON数据包。在前段时间已经写过一篇cJSON的文章,所以本文成为“续集”。
【相关博文】
【前端学习——JSON学习】——学习各种各样的JSON格式
【cJSON学习笔记】——本学习笔记的前一“集”。
【代码仓库】——cJSON-Example
代码仓库位于bitb...
分类:
Web程序 时间:
2014-06-22 07:03:23
阅读次数:
229
java.lang.Object.equals()函数默认情况下是不能用来比较组合对象的,例如密钥值。很多Key类没有覆写equals()函数,因此,组合对象的比较必须单独比较里面的各个类型以保证正确性。
[不符合安全要求的代码示例]
下面的代码使用equals()函数比较两个key值,key值即使具有相同的取值也可能会返回不相等,导致结果出错。
private static b...
分类:
编程语言 时间:
2014-06-22 08:03:23
阅读次数:
275
在写具体代码之前,咱们先了解一下Apache PDFbox API框架给我们提供的命令行工具。通过这个命令行工具,我们可以了解大部分Apache PDFbox给我们提供的强大功能。
在我们运行命令之前,我们首先需要去下载这个命令行工具所依赖的jar文件,大家可以去下面的任何一个站点。限于篇幅,我们当前的例子中。只演示3~4个命令的使用,其他的大家可以参考https://pdfbox.apache.org/commandline/ 其官方网站上说明或者读者自己举一反三...
你是时候换一款日期控件了,而layDate非常愿意和您成为工作伙伴。她正致力于成为全球最高大上的web日期支撑,为国内外所有从事web应用开发的同仁提供力所能及的动力。她基于原生JavaScript精心雕琢,兼容了包括IE6在内的所有主流浏览器。她具备优雅的内部代码,良好的性能体验,和完善的皮肤体系,并且完全开源,你可以任意获取开发版源代码,一扫某些传统日期控件的封闭与狭隘。layDate延续了layui一贯的简单与易用,本着资源共享的开发者精神和对网页日历交互的无穷追求,她将长年被维护和更新,且这动力永不...
分类:
Web程序 时间:
2014-06-22 07:18:13
阅读次数:
289
理解异常在javaScript面向对象编程是非常重要的,异常是一种非常强大的处理错误的方式。
错误处理
首先我们来看一个有问题的代码:
nonexistant();
在以上这个例子中,访问一个不存在的变量,在这种情况下,程序会怎么处理?很早以前的处理方式就是程序直接崩溃死掉,所以我们不能容忍这种处理方式,需要有办法来处理。
最简单的处...
分类:
编程语言 时间:
2014-06-22 12:15:49
阅读次数:
236
安全性要求高的应用程序必须避免使用不安全的或者强度弱的加密算法,现代计算机的计算能力使得攻击者通过暴力破解可以攻破强度弱的算法。例如,数据加密标准算法DES是极度不安全的,使用类似EFF(Electronic Frontier Foundaton) Deep Crack的计算机在一天内可以暴力破解由DES加密的消息。
[不符合安全要求的代码示例]
下面的代码使用强度弱的DES...
分类:
编程语言 时间:
2014-06-22 07:08:44
阅读次数:
239
问题——
给定N个整数(有可能是负数)A1,A2,A3,A4...An,求最大子序列和。
(子序列必须是连续的);比如,对于输入,-2,11,-4,13,-5,-2;这个序列,
答案是20,即从A2到A4。
对于这个问题,你怎么想的呢?下面有四种解法,看看你的解法是不是其中之一。
解法一、穷举
解题思路——
既然是求某一个连续的子序列的最大和,那么我们把所有的子序列的和都加一遍...
分类:
其他好文 时间:
2014-06-22 08:06:08
阅读次数:
237