数据结构和算法
文章平均质量分 79
RYP_S
这个作者很懒,什么都没留下…
展开
-
与树相关的公式、定理
根据树的叶子结点个数、非叶子节点个数、树的深度等等,推导出的公式、定理也有不少,可以自己手工推算一下,记忆会更深刻,此博文只介绍公式、定理内容,不作推导。1. 二叉树第i层上至多有2^i-1个结点,其中i大于等于1,2^i表示2的i次方;2. 深度为k的二叉树至多有2^k-1个结点,其中k大于等于1;3. 任何一颗非空二叉树,若它的叶子结点数为m,2度结点数为n,则m=n+1;4.翻译 2013-07-19 10:21:54 · 3227 阅读 · 0 评论 -
KMP算法及java实现
目录(?)[+]【参考资料】关于KMP算法,大家可以查阅博客园的这篇文章:阮一峰:字符串匹配的KMP算法这篇解释文章相当简明,当然july的这篇文章也可以读一读:六之续、由KMP算法谈到BM算法【算法原理】这里抄录第一篇参考资料的例子:下面,我用自己的语言,试图写一篇比较好懂的 KMP转载 2016-05-31 13:53:00 · 533 阅读 · 0 评论 -
距离和相似度度量
在数据分析和数据挖掘的过程中,我们经常需要知道个体间差异的大小,进而评价个体的相似性和类别。最常见的是数据分析中的相关分析,数据挖掘中的分类和聚类算法,如K最近邻(KNN)和K均值(K-Means)。当然衡量个体差异的方法有很多,最近查阅了相关的资料,这里整理罗列下。为了方便下面的解释和举例,先设定我们要比较X个体和Y个体间的差异,它们都包含了N个维的特征,即X=(x1, x2, x3, …转载 2015-05-05 15:00:35 · 565 阅读 · 0 评论 -
链表的基本操作
链表操作是最基本的、必须掌握的知识点,最好滚瓜烂熟,透彻理解。工作时间短用的也不够频繁,还是总结一下比较好,以加强巩固。1. 单链表 结点形式 区分几个概念: 首节点:第一个元素所在节点。 头指针:指向首节点的指针。 头结点:为了操作方便,在第一个节点之前附设的一个结点,此时指向头结点的翻译 2013-07-18 12:58:38 · 826 阅读 · 0 评论 -
丑数
最近在看一些算法题,提到一个我以前不知道的新词——“丑数”,很特别,也很好奇。网上查询结果:转载:http://blog.csdn.net/imzoer/article/details/8048741因子中仅仅包含2、3、5的数,称为丑数。比如说14,就不是丑数,因为因子包含7。请输出所有丑数中的第n个丑数。第一个是基本的思路。写一个函数判断一个数字n是不是丑数。那么可能会这么转载 2015-01-05 15:30:10 · 494 阅读 · 0 评论 -
主宰全球的10大算法
原文链接:http://www.csdn.net/article/2014-06-03/2820046-Algorithm转载 2014-06-03 14:14:02 · 746 阅读 · 0 评论 -
关于排序算法的一点知识——实例和伪代码
1.插入排序将待排序的数据分成两个区域:有序区和无序区,每次将一个无序区中的数据按其大小插入到有序区中的适当位置,直到所有无序区中的数据都插入完成为止。原创 2013-07-15 14:01:37 · 15414 阅读 · 0 评论 -
关于排序算法的一点知识——性能比较
1、稳定排序和非稳定排序 简单地说就是所有相等的数经过某种排序方法后,仍能保持它们在排序之前的相对次序,我们就说这种排序方法是稳定的。反之,就是非稳定的。 插入排序、冒泡排序、二叉树排序、二路归并排序及其他线性排序是稳定的。 选择排序、希尔排序、快速排序、堆排序是不稳定的。2、内排序和外排序 在排序过程中,所有需要排序的数都在内存,并在内存中调原创 2013-07-15 09:28:32 · 711 阅读 · 0 评论 -
关于排序算法的一点知识——算法思想
1. 功能:选择排序 输入:数组名称(也就是数组首地址)、数组中元素个数 思想:在要排序的一组数中,选出最小的一个数与第一个位置的数交换;然后在剩下的数当中再找最小的与第二个位置的数交换,如此循环到倒数第二个数和最后一个数比较为止。 性能:不稳定的,算法复杂度O(n^2)。2. 功能:直接插入排序 输入:数组名称(也就是数组首地址)、数组中元素个数 思原创 2013-07-15 10:05:45 · 743 阅读 · 0 评论 -
【LeetCode】Simplify Path实现(Java版)
描述Given an absolute path for a file (Unix-style), simplify it.For example,path = "/home/", => "/home"path = "/a/./b/../../c/", => "/c"Corner Cases:• Did you consider the case where path =原创 2016-06-02 19:06:51 · 852 阅读 · 0 评论