将两个递增的链表合并为一个递增的新链表。
思路:比较两个递增的链表的头结点大小,假设链表1的头结点的值小,则链表1的头结点为新链表的头结点,接着继续合并,接着比较链表1的第二个结点与链表2的头结点比较,两个链表还是有序的递增序列,重复上述步骤,最后生成一新的递增链表。 public static ListNote mergeListNode(ListNote head1Node,ListNo...
分类:
编程语言 时间:
2015-05-19 16:43:36
阅读次数:
153
题目要求:在O(n)的时间内反转链表,并返回反转后链表的头指针。
分析:求解链表问题首先一定要考虑非空问题,而且要注意终止的位置。
如图所示,反转的时候定义三个节点,pCur代表当前节点、pNext代表指向的下一个节点、pPre代表前一个节点。有了这三个节点就可以从前往后遍历,而且保证链表不会断...
分类:
编程语言 时间:
2015-05-19 16:43:48
阅读次数:
166
Lecture5: Bisection methods , Newton/Raphson, introduction to lists二分法,牛顿,拉复生方法,列表Bisection methods 二分法注意:
# bug: when x x = high eg.x=0.25 sqrt(x) = 0.5
# fix bug: high = max(x, 1...
分类:
编程语言 时间:
2015-05-19 16:41:21
阅读次数:
339
一、队列(Queue/Deque)
Queue:单向
队列通常FIFO(先进先出)、优先级队列和堆栈队列(后进先出)
add 增加一个元索 如果队列已满,则抛出一个IIIegaISlabEepeplian异常
remove 移除并返回队列头部的元素 如果队列为空,则抛出一个NoSuchElementException异常
eleme...
分类:
编程语言 时间:
2015-05-19 16:42:50
阅读次数:
163
装饰者模式定义
动态地将责任附加到对象上。若要扩展功能,装饰者提供比继承更有弹性的替代方案
实现类图
装饰者模式的特点
A 装饰者和被装饰对象有相同的超类型。(注意这是利用继承达到”类型匹配“,而不是利用继承获得”行为“,行为来自装饰者和基础组件,或者与其他装饰者之间的组合关系)
B 可以用一个或多个装饰者包装一个对象。
C 因为装饰者...
分类:
编程语言 时间:
2015-05-19 16:40:11
阅读次数:
211
优化算法时间复杂度算法的时间复杂度对程序的执行效率影响最大,在Python中可以通过选择合适的数据结构来优化时间复杂度,如list和set查找某一个元素的时间复杂度分别是O(n)和O(1)。不同的场景有不同的优化方式,总得来说,一般有分治,分支界限,贪心,动态规划等思想。减少冗余数据如用上三角或下三角的方式去保存一个大的对称矩阵。在0元素占大多数的矩阵里使用稀疏矩阵表示。合理使用copy与deepc...
分类:
编程语言 时间:
2015-05-19 16:37:48
阅读次数:
212
分析:
建图:每个任务和每一天分别看做一个点,添加源和汇点。源点和每个任务连一条边,每天边的容量为完成对应任务所需处理次数。若第i个任务能够在Si至Ei天处理,则由该任务向这些天分别连一条边,容量为1,表示此任务每天只能被处理一次。最后,每一天分别连一条边到汇点,容量为机器数M,即每天可以处理M个任务。若求出的最大流等于所有任务需要处理的次数之和,说明能完成任务;否则,不能。
#inc...
分类:
编程语言 时间:
2015-05-19 16:36:17
阅读次数:
139
Java大课堂:常用数据结构一
背景
在计算机科学的学习中,数据结构是个绕不开的问题。那么我将在接下来的时间,简明扼要的介绍常见数据结构以及部分源码。下面我将简单介绍本大课堂涉及到的内容。
众所周知,一款好用的数据结构,不仅包括数据结构的实现,还有相关工具集。比如c++中stl有大量的工具函数,比如sort,accumulate,reduce,for_each,remove_if,cou...
分类:
编程语言 时间:
2015-05-19 16:34:41
阅读次数:
133
http://acm.hdu.edu.cn/showproblem.php?pid=4568
Problem Description
One day, a hunter named James went to a mysterious area to find the treasures. James wanted to research the area and brough...
分类:
编程语言 时间:
2015-05-19 16:36:38
阅读次数:
228
概述??归并排序-顾名思义通过递归和合并的方式排序无序数列。归并排序是基于一种被称为“分治”(divide and conquer)的策略。
归并排序先分解无序数列到每一个无效数列为一个元素时候,该无序数列就是有序数列,然后一步步回退合并每一个有序数列理论http://blog.csdn.net/morewindows/article/details/6678165
http://bubkoo....
分类:
编程语言 时间:
2015-05-19 16:33:17
阅读次数:
149
MyEclipse2015中在使用Maven创建web项目时,会出现错误提示:Dynamic Web Module 3.0 requires Java 1.6 or newer....
分类:
编程语言 时间:
2015-05-19 16:33:20
阅读次数:
174
写测试框架必备技术,agent+javassist。
对于agent,是在vm启动,执行方法前,将字节码修改的服务代理。
对于javassist,是修改字节码具体实现。
字节码处理工具,bcel,asm与虚拟机指令打交道。Javassist采用java编码的方法处理字节码,性能相对较低,但方便。...
分类:
编程语言 时间:
2015-05-19 16:33:59
阅读次数:
178
http://www.cnblogs.com/leiOOlei/p/3725911.htmlJNDI方式配置数据源:P2PDS WEB-INF/classes/**/hibernate/**.hbm.xmlorg.hibernate.dialect.OracleDialecttruefalse二.....
分类:
编程语言 时间:
2015-05-19 16:25:35
阅读次数:
136
File fileDirs = new File("路径"); if (!fileDirs.exists()) fileDirs.mkdirs(); File file = new File("路径", "文件名"); if (!file.exists()) { file....
分类:
编程语言 时间:
2015-05-19 16:23:42
阅读次数:
122