基础算法
文章平均质量分 84
happyever2012
这个作者很懒,什么都没留下…
展开
-
程序员必须知道的10大基础实用算法及其讲解
http://www.cricode.com/2001.html转载 2014-08-25 09:59:50 · 437 阅读 · 0 评论 -
动态规划基本概念
基本思想动态规划算法通常用于求解具有某种最优性质的问题。在这类问题中,可能会有许多可行解。每一个解都对应于一个值,我们希望找到具有最优值的解。动态规划算法与分治法类似,其基本思想也是将待求解问题分解成若干个子问题,先求解子问题,然后从这些子问题的解得到原问题的解。与分治法不同的是,适合于用动态规划求解的问题,经分解得到子问题往往不是互相独立的。若用分治法来解这类问题,则分解得到的子问题数目转载 2015-03-30 10:53:36 · 708 阅读 · 0 评论 -
动态规划算法的优化技巧
[关键词] 动态规划、 时间复杂度、优化、状态 [摘要]动态规划是信息学竞赛中一种常用的程序设计方法,本文着重讨论了运用动态规划思想解题时时间效率的优化。全文分为四个部分,首先讨论了动态规划时间效率优化的可行性和必要性,接着给出了动态规划时间复杂度的决定因素,然后分别阐述了对各个决定因素的优化方法,最后总结全文。 [正文]一、引言动态规划是一种重要的程序设计方法,在信息转载 2015-03-30 14:05:00 · 571 阅读 · 0 评论 -
图 深度优先遍历 广度优先遍历 非递归遍历 图解算法过程
图的邻接矩阵表示通常图的表示有两种方法:邻接矩阵,邻接表。本文用邻接矩阵实现,一是代码量更少,二是代码风格也更贴近C语言。但不论是图的哪种实现方式,其基本的实现思想是不变的。1:节点的信息,我们用一维数组a[n]来存储,假设图共有n个节点。2:节点与节点间的关系,我们用二维数组b[n][n]存储。3:b[i][j]表示,从i到j有向连通,b[j][i]表示从转载 2015-03-30 19:36:17 · 2822 阅读 · 0 评论 -
机器学习(machine learning)之AdaBoost算法
转载自 http://blog.csdn.net/haidao2009/article/details/7514787菜鸟最近开始学习machine learning。发现adaboost 挺有趣,就把自己的一些思考写下来。主要参考了http://stblog.baidu-tech.com/?p=19,其实说抄也不为过,但是我添加了一些我认为有意思的东西,所以我还是把它转载 2015-04-10 13:07:41 · 336 阅读 · 0 评论 -
中文分词之HMM模型详解
关于HMM模型的介绍,网上的资料已经烂大街,但是大部分都是在背书背公式,本文在此针对HMM模型在中文分词中的应用,讲讲实现原理。尽可能的撇开公式,撇开推导。结合实际开源代码作为例子,争取做到雅俗共赏,童叟无欺。没有公式,就没有伤害。模型介绍第一次听说HMM模型是从李开复的博文论文中听说的:李开复1988年的博士论文发表了第一个基于隐马尔科夫模型(HMM)的语转载 2015-04-08 18:16:58 · 1874 阅读 · 1 评论 -
归并排序,自顶向下,自底向上
http://blog.csdn.net/cjf_iceking/article/details/7920153转载 2015-05-08 14:38:20 · 542 阅读 · 0 评论 -
堆与堆排序
堆排序与快速排序,归并排序一样都是时间复杂度为O(N*logN)的几种常见排序方法。学习堆排序前,先讲解下什么是数据结构中的二叉堆。二叉堆的定义二叉堆是完全二叉树或者是近似完全二叉树。二叉堆满足二个特性:1.父结点的键值总是大于或等于(小于或等于)任何一个子节点的键值。2.每个结点的左子树和右子树都是一个二叉堆(都是最大堆或最小堆)。当父结点的键值总转载 2015-05-13 18:18:08 · 297 阅读 · 0 评论 -
图解排序算法
一 插入排序1.1 直接插入排序基本思想:每次将一个待排序额记录按其关键码的大小插入到一个已经排好序的有序序列中,直到全部记录排好序。图解:代码实现:[cpp] view plaincopy//直接顺序排序 void InsertSort(int r[], int n) {转载 2015-05-08 00:39:07 · 493 阅读 · 0 评论