String字符串匹配算法 @Date 2017.06.09 DEMO代码链接 暴力匹配 时间复杂度O(m * n) private static int forceMatch(String originS, Strin…
标签:数据结构
复杂度分析
(上) 一、什么是复杂度分析? 1.数据结构和算法解决是“如何让计算机更快时间、更省空间的解决问题”。 2.因此需从执行时间和占用空间两个维度来评估数据结构和算法的性能。 3.分别用时间复杂度和空间复杂度两个概念来描述性…
BitMap原理
经常能够看到有些大厂的面试题里有一些这样的题目:一个10G的文件,里面全部是自然数,一行一个,乱序排列,对其排序。在32位机器上面完成,内存限制为 2G。 首先来分析一下题目,10G的文件,只有2G内存,显然,不可能一次…
javascript实现哈夫曼编码
定义哈夫曼树节点HuffmanTreeNode function HuffmanTreeNode (weight, char) { // 左子树 this.l = null // 右子树 this.r = null //…
图的基本知识总结
By @JosonLe at 2017/12/18 废话不多说,直接上。 但不得要说一句,简书Markdown模式真用不惯,文中很多数学公式都显示不出来,不知道在简书中该怎样写,ε=(´ο`*)))唉 不管了,初次写文望…
C++中级算法第四天(快速排序)
大家好!今天给大家讲的是快速排序 解释: 快速排序(Quicksort)是对冒泡排序的一种改进。 快速排序由C. A. R. Hoare在1962年提出。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中…
数据结构概念(20190116)
数据结构概念(20190116) 数据结构 数据元素之间存在一种或多种特定的关系的集合 逻辑结构 集合 有相同性质的一组元素组成的元素集 线性表 元素集的首元素没有前驱,尾元素没有后继,中间元素都有前驱和后继。 树 图 …
JS中数据结构的遍历--Iterator和for...of循环
JavaScript原有的四种表示’集合’的数据结构,Object、Array、Set、Map。 遍历器(Iterator)是一种接口,为各种不同的数据结构提供统一的访问机制。任何数据结构只要部署…
动态规划之多重背包问题
多重背包问题 有N种物品和一个容量为V的背包。第i种物品最多有n[i]件可用,每件费用是c[i],价值是w[i]。求解将哪些物品装入背包可使这些物品的费用总和不超过背包容量,且价值总和最大。 这题目和完全背包问题很类似。…
BZOJ-1271: [BeiJingWc2008]秦腾与教学评估(二分查找)
题目:http://www.lydsy.com/JudgeOnline/problem.php?id=1271 由于最多只有一个奇数,那么就二分前缀和即可。 代码: #include <cstdio> #in…
常用排序算法专题—冒泡排序
冒泡排序 冒泡排序就是把小的元素往前调或者把大的元素往后调。比较是相邻的两个元素比较,交换也发生在这两个元素之间。所以,如果两个元素相等,是不会再交换的;如果两个相等的元素没有相邻,那么即使通过前面的两两交换把两个相…
BZOJ-1055: [HAOI2008]玩具取名(区间DP)
题目:http://www.lydsy.com/JudgeOnline/problem.php?id=1055 这几天脑子不太好尽刷些傻叉的水题。。。区间DP,没什么好说的。。。除了吐槽一下自己因为没删注释性输出而WA了…