二分法思想是个基础但又极其重要的思想,C++,Java,数据结构,算法设计等多门课程都详细地讲述了一遍二分法。 对于一个已排序的长数组来说,二分法其O(NlogN)的时间复杂度,对于效率的提升是毋庸置疑的,而且二分法用途广泛,实用且方便。但这一切的前提是数组已排序,对于无序表与链表,二分法便无能为力 ...
分类:
其他好文 时间:
2018-10-15 00:39:13
阅读次数:
162
数据结构, 算法, 迪杰斯特拉, Dijkstra, 最短路径查找 ...
分类:
编程语言 时间:
2018-08-25 16:28:19
阅读次数:
216
程序员必知的8大排序(一) 直接插入排序,希尔排序(java实现) 2012年05月12日 11:18:05 阅读数:56853 标签: java数据结构算法 更多 个人分类: Java 程序员必知的8大排序(一) 直接插入排序,希尔排序(java实现) 2012年05月12日 11:18:05 阅 ...
分类:
编程语言 时间:
2018-08-23 20:59:29
阅读次数:
193
前言:在学数据结构过程中,我们都会产生这样的想法:我们为什么学习数据结构,学数据结构有什么作用?这些有关数据结构的算法不都有人封装好了,我们可以直接调用,学了数据结构还不知道它的用途,等等这样的想法。在这里我用一个不恰当的比喻:比如项目经理找你优化系统中的排序算法,而此时你会无重下手,因为该算法你是调用别人的,底层的实现一点不懂,此时只能加班看书,而如果你学了数据结构,你就会知道多种排序算法,根据
分类:
其他好文 时间:
2018-06-06 23:40:51
阅读次数:
165
数据结构可以归类两大类型:线性结构与非线性结构,本文的内容关于非线性结构:树的基本定义及相关算法。关于树的一些基本概念定义可参考:维基百科
树的ADT模型:
根据树的定义,每个节点的后代均构成一棵树树,称为子树。因此从数据类型来讲,树、子树、树节点是等同地位,可将其看作为一个节点,用通类:Tree表示。如下图所示:
图:Tree ADT模型示意图
可采用“父亲-儿子-兄弟”模型来表示树的...
分类:
编程语言 时间:
2015-08-16 21:29:18
阅读次数:
194
/**
* 功能:有个小孩正在上楼梯,楼梯有n阶台阶,小孩一次可以上1阶、2阶或3阶。计算小孩上楼梯的方式有多少种。
*/
两种方法:
方法一:
//递归法
/**
* 思路:自上而下的方式。
* 最后一步可能是从第n-1阶往上走1阶、从第n-2阶往上走2阶或从第n-3阶往上走3阶。
* 因此,抵达最后一阶的走法,抵达这最后三阶的方式的综合。
* ...
分类:
其他好文 时间:
2015-08-08 18:16:50
阅读次数:
2006
/**
* 功能:在二维平面上,有一些点,请找出经过点数最多的那条线。/**
* 思路:在任意两点之间画一条无线长的直线,用散列表追踪那条直线出现的次数最多。时间复杂度O(N*N)
* 注意:
* 1)用斜率和y轴截距来确定是否是同一条直线。
* 2)浮点数不一定能用二进制数准确表示,因此检查两个浮点数的差值是否在某个极小值(epsilon)内。
* 3)对于散...
分类:
其他好文 时间:
2015-08-08 15:05:13
阅读次数:
218
/**
* 功能:实现整数的乘法、减法和除法运算。只允许使用加号。
*/
//减法
public static int minus(int a,int b){
return a+negate(b);
}
//取反
/**
* 思路:对正数k的取反,只需要将-1连续加k次;对负数k的取反,只需要将1连续加k次。
* @param a
* @return
*/...
分类:
其他好文 时间:
2015-08-07 20:15:16
阅读次数:
177
/**
* 功能:给定直角坐标上的两条线,确定这两条线会不会相交。
*/
public class Line {
static double epsilon=0.000001;
public double slope;//斜率
public double yintercept;//与y轴的截距
public static void main(String[] args)...
分类:
其他好文 时间:
2015-08-07 20:15:15
阅读次数:
105
/**
* 功能:有个单色屏幕存储在一个一维字节数组中,使得8个连续像素可以存放在一个字节里。屏幕宽度位w,
* 且w可以被8整除(即一个字节不会分布在两行上),屏幕高度可由数组长度和屏幕宽度推算得出。
* 实现方法drawHorizontalLine(byte[] screen,
int width,int
x1,int
x2,int
y),绘制从点(x1,y)
* 到点...
分类:
其他好文 时间:
2015-08-07 13:22:59
阅读次数:
122