数据结构与算法
数据结构与算法
学习侠
重度动态规划患者。
展开
-
topK问题的几种解法及C++实现
topK问题是经典的算法问题,其大意是从一个序列中找出最小(大)的k个数,面对这个问题最简单的方法当然是先排序后取前k个数,但这样有些浪费时间,比较经典的方法是借助快排和堆排的思想。原创 2020-10-21 16:53:32 · 1812 阅读 · 0 评论 -
KMP算法及C++实现
KMP算法由D.E.Knuth,J.H.Morris和V.R.Pratt提出,因此称为KMP算法。KMP算法是一种用于字符串匹配的算法,能够从一个主串中快速找出是否存在需要的模式串。相比于暴力法,KMP算法在时间复杂度上有很大的改善。暴力法在匹配失败时单纯地往前进一格再重新开始匹配,而KMP算法通过先前生成的next数组,在匹配失败利用该数组记录的信息尽量往前跳,避免不必要的匹配,从而节省时间。网络上介绍该算法的优质文章,但我这里还是想自己记一下笔记,写一些自己的理解,班门弄斧,还请谅解。原创 2020-08-25 17:09:22 · 1497 阅读 · 0 评论 -
图论算法整理(杂)
整理一些有关图论算法的东西,整理得比较随意,而且也是先整理一些,之后想到啥就补充一点改一点,所以在标题上写个杂。这篇笔记纯粹是整理着自己玩,所以代码写得也很随意。原创 2020-07-11 19:09:37 · 888 阅读 · 0 评论 -
二叉树线索化理论笔记
复习一下二叉树线索化,做做笔记。原创 2020-07-09 11:30:21 · 261 阅读 · 0 评论 -
C++实现二叉树的各种遍历,包含递归和迭代方法
复习一下二叉树的遍历,把力扣相关的题再做一遍,记录一下各种遍历的C++实现方法。原创 2020-07-01 20:07:17 · 822 阅读 · 0 评论 -
排序算法概念梳理及C++实现
对排序算法进行一个简单的整理。整理包括插入排序、冒泡排序、选择排序、希尔排序、堆排序、归并排序、快速排序和桶排序。原创 2020-06-05 12:35:23 · 243 阅读 · 0 评论 -
数据结构知识整理——树
这里打算整理一下数据结构中有关“树”的基本知识点,尽量做到全面,当然不可能完全做到啦,因此以后发现缺漏会进行补充。这里主要参考了《数据结构与算法分析(C语言描述)》这本书,这篇文章也算是对书中相应知识点的一个整理及补充。文章目录基本概念二叉树二叉查找树AVL数伸展树B树二级目录三级目录基本概念二叉树二叉查找树AVL数伸展树B树二级目录三级目录...原创 2020-05-18 20:13:24 · 378 阅读 · 0 评论