算法
文章平均质量分 64
chenweishaoxing
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
算法分类(按照效率降序排列)
1.常数级、2.对数级3.次线性级4.线性级5.n log n 级6.平方级7.指数级原创 2011-09-13 21:09:53 · 160 阅读 · 0 评论 -
算法设计与分析_回溯法分析
回溯法 有通用的解题法之称。用它可以系统的搜索问题的所有解。回溯法是一个既带有系统性又带有跳跃性的搜索算法。它在问题的解空间树中,按深度优先策略,从根节点出发搜索解空间树,算法搜索到解空间的任一节点时,先判断该节点是否包含问题的解。如果肯定不包含,那么跳过对该节点为树的子树的搜索的,逐层向其祖先节点回溯,否则进入该子树,继续按深度优先策略搜索,回溯法求问题的一个子解时,只要搜...原创 2012-02-12 09:53:14 · 297 阅读 · 0 评论 -
经典而简单的贪心算法
package endual;public class Main { /** * 题目是:找给顾客的钱的数目最少 */ public static void main(String[] args) { float backMoney = 70f ; //应找的零钱 //银行的前是根据现实是设计好的 float[] backMoneys...原创 2012-02-10 18:23:04 · 165 阅读 · 0 评论 -
贪心算法的一些感悟
每一个贪心算法的背后,总有一个动态规划在默默的陪着。 ----------Endual 这句话的意思是贪心算法和动态规划有密切的关系,用树上的话来说,贪心算法在一些问题上比动态规划好,提高了效率,比动态规划解决起来要好的多。 首先我们来看一个例子...原创 2012-02-10 15:42:47 · 503 阅读 · 0 评论 -
计算时间和空间复杂度
计算时间和空间复杂度 分类: C++学习 2008-09-01 15:20 461人阅读 评论(0) 收藏 举报 1> 时间复杂度指的是所有语句的执行频度之和,它一般由嵌套最深地语句频度决定. 比如单重循环就是O(n),双重循环就是O(n^2),依此类推……2>空间复杂度指的是运行时临时占用的存储空间大小. 主要是...原创 2012-02-02 13:37:12 · 138 阅读 · 0 评论 -
java排序算法的实现(转载)
插入排序:package org.rut.util.algorithm.support;import org.rut.util.algorithm.SortUtil;/** * @author treeroot * @since 2006-2-2 * @version 1.0 */public class InsertSort implements SortUtil.Sort{ ...原创 2012-01-31 23:12:58 · 105 阅读 · 0 评论 -
java 实现二叉树
在计算机科学中,树是一种非常重要的数据结构,而且有非常广泛的应用,例如linux下的目录结构就可以看成是一棵树,另外树也是存储大量的数据一种解决方法,二叉排序树是树的一种特殊情形,它的每个节点之多只能有两个子节点,同时左子树的节点都小于它的父节点,右子树中的节点都大于它的父节点,二叉排序树在搜索中的应用非常广泛,同时二叉排序树的一个变种(红黑树)是java中TreeMap和TreeSet的实现基础...原创 2012-01-25 21:13:19 · 108 阅读 · 0 评论 -
java实现队列
队列是一种重要的数据结构,在排队论和算法设计中有很重要的应用,其实队列也是一种链表,它只允许在表的始端出表(dequeue),在表的末端入表(enqueue),下边是队列的java实现。50 //队列是一种重要的数据结构,主要应用是资源的排队(例如打印机),需要注意的是要利用循环数据来存储数据class Queue { private int front; private int ba...原创 2012-01-25 21:10:16 · 113 阅读 · 0 评论 -
java 栈(面试够了的)
package endual;public class Stack { private int top = -1 ; //无数据的时候为-1,数据从0开始 private int size = 0 ; //当前的栈中的数据个数 private int capacity = 10 ; //当前栈的默认存储的个数 private Object[] objs ; public Stack() { ...原创 2012-01-25 21:07:41 · 116 阅读 · 0 评论 -
java 栈的实现
栈可以说是一种特殊的链表,它的主要特点是先进后出,是一种重要的数据结构,广泛应用于我们的编程之中,例如多项式求值、平衡输入和方法的调用等。实现代码如下所示:?12345678910111213141516171819202122232425262728293031323334353637383940 package com.suznhenxing;public class Stack { p...原创 2012-01-25 20:38:24 · 215 阅读 · 0 评论 -
求解算法的时间复杂度的具体步骤
求解算法的时间复杂度的具体步骤 求解算法的时间复杂度的具体步骤是: ⑴ 找出算法中的基本语句; 算法中执行次数最多的那条语句就是基本语句,通常是最内层循环的循环体。 ⑵ 计算基本语句的执行次数的数量级; 只需计算基本语句执行次数的数量级,这就意味着只要保证基本语句执行次数的函数中的最高次幂正确即可,可以忽略所有低次幂和最高次幂的系数。这样能够简化算法分析,并且使注意...原创 2012-01-25 19:14:01 · 1278 阅读 · 0 评论 -
常用的排序算法的时间复杂度和空间复杂度
常用的排序算法的时间复杂度和空间复杂度 分类: 笔试面试题 2010-11-09 07:52 470人阅读 评论(2) 收藏 举报 常用的排序算法的时间复杂度和空间复杂度排序法 最差时间分析 平均时间复杂度 稳定度 空间复杂度 冒泡排序 O(n2) O(n2) 稳定 O(1) 快速排序 O(n2) O(n*log2n) 不稳定 O(log2n)~O(n) 选择排序 O(n2) O...原创 2012-01-24 23:03:32 · 123 阅读 · 0 评论 -
时间复杂度和空间复杂度
同一问题可用不同算法解决,而一个算法的质量优劣将影响到算法乃至程序的效率。算法分析的目的在于选择合适算法和改进算法。 算法复杂度分为时间复杂度和空间复杂度。其作用: 时间复杂度是度量算法执行的时间长短;而空间复杂度是度量算法所需存储空间的大小。1、时间复杂度 1.1 时间频度 一个算法中的语句执行次数称为语句频度或时间频度。记为T(n) 1....原创 2012-01-24 22:18:31 · 112 阅读 · 0 评论 -
时间复杂度和空间复杂度
时间复杂度和空间复杂度 分类: Algorithm 2008-06-18 20:45 4538人阅读 评论(2) 收藏 举报 【摘】时间复杂度和空间复杂度2007-09-16 13:431、时间复杂度 (1)时间频度 一个算法执行所耗费的时间,从理论上是不能算出来的,必须上机运行测试才能知道。但我们不可能也没有必要对每个算法都上机测试,只需知道哪个算法花费的时间多,哪个算法花费的时间少就可以了。...原创 2012-01-24 22:17:45 · 103 阅读 · 0 评论 -
海量数据算法笔试题
海量数据算法笔试题 2010-08-22 15:49 521人阅读 评论(2) 收藏 举报 1. 给定a、b两个文件,各存放50亿个url,每个url各占64字节,内存限制是4G,让你找出a、b文件共同的url? 方案1:可以估计每个文件安的大小为50...原创 2012-01-21 01:58:26 · 142 阅读 · 0 评论 -
[转]大数据量,海量数据 处理方法总结
[转]大数据量,海量数据 处理方法总结 2010-08-22 11:34 61人阅读 评论(1) 收藏 举报 1.Bloom filter 适用范围:可以用来实现数据字典,进行数据的...原创 2012-01-21 01:57:18 · 115 阅读 · 0 评论 -
时间复杂度的计算
算法复杂度是在《数据结构》这门课程的第一章里出现的,因为它稍微涉及到一些数学问题,所以很多同学感觉很难,加上这个概念也不是那么具体,更让许多同学复习起来无从下手,下面我们就这个问题给各位考生进行分析。首先了解一下几个概念。一个是时间复杂度,一个是渐近时间复杂度。前者是某个算法的时间耗费,它是该算法所求解问题规模n的函数,而后者是指当问题规模趋向无穷大时,该算法时间复杂度的数量级。 当我们评...原创 2012-01-17 22:54:13 · 120 阅读 · 0 评论 -
java 回溯法求解 8皇后问题
package endual;public class Queen { private final int size = 8; // 棋盘的大小 private int[] location ; //皇后在棋盘上的每一行的列的位子 private int[] colsOccupied ; //皇后在棋盘上...原创 2012-02-14 07:51:59 · 152 阅读 · 0 评论
分享