![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
总结
virgilshi
和舒适区说白白(ง'-')ง
展开
-
[数据结构与算法] 面试中常见的数据结构总结
文章目录写在前面二叉树满二叉树完全二叉树BST树写在前面本篇博客将介绍满二叉树、完全二叉树、BST-tree、AVT-tree、B/B±tree、RB-tree等数据结构。二叉树二叉树具有的性质是:二叉树第i层上至多有2i−12^{i-1}2i−1个节点;高度为k的二叉树至多有2k−12^k-12k−1个节点;包含n个节点的二叉树高度范围为[log2(n+1),n][log_2(n+1),n][log2(n+1),n];二叉树的叶子节点个数为n0n_0n0,度为2的节点数为n2n_2n原创 2020-10-09 23:43:24 · 1904 阅读 · 0 评论 -
LeetCode 单词拆分题小结
139. 单词拆分给定一个非空字符串 s 和一个包含非空单词列表的字典 wordDict,判定 s 是否可以被空格拆分为一个或多个在字典中出现的单词。原题链接解题思路: 此题应该是典型的动态规划解题,定义dp[len]表示前len个字符组成的字符串能否被拆分,然后状态转移即为长度为len的后L个字符组成的字符串是否在字典中,若在则dp[len]取决于长度为len-L是否能拆分,即dp[len-L]的值,OK,状态转移方程为dp[len]=dp[len−L]&&substr(L)∈wor原创 2020-06-25 15:31:10 · 502 阅读 · 0 评论 -
[LeetCode][总结] 只出现n次的数字(I-II-III...)总结
只出现n次的数字(I-II-III…)总结LeetCode中「只出现n次的数字…」题有以下几题:260. 只出现一次的数字 III137. 只出现一次的数字 II136. 只出现一次的数字题意分别是:题136给定非空整数序列,只有一个元素(A)只出现一次,其他元素都出现两次,找出出现一次的元素.题137给定非空整数序列,只有两个元素(A,B)只出现一次,其他元素都出现两次,找出这两个出现一次的元素.题260给定非空整数序列,只有一个元素(A)只出现一次,其他元素都出现三次,找出出现一次原创 2020-06-01 09:03:41 · 308 阅读 · 1 评论 -
[LeetCode]计算层序遍历最坏复杂度
计算层序遍历最坏复杂度:f(n)∝2h−1f(n) \propto 2 ^ {h - 1}f(n)∝2h−1,其中h为树的高度,f(n)为辅助空间,不难知道,n=2h−1n = 2^h - 1n=2h−1,nnn为树的节点个数。因此做近似处理,f(n)∝2h,n∝2hf(n) \propto 2 ^ h, n \propto 2^hf(n)∝2h,n∝2h,因此得出最简洁的表达为f(n)∝n...原创 2020-05-01 20:02:56 · 824 阅读 · 0 评论 -
探讨哈希算法及其应用场景
哈希算法本篇博文主要介绍哈希算法的定义,常见的哈希算法,哈希冲突的解决方法…相比入其他数据结构,散列表的优势在于查找和插入的速度非常快,在不发生冲突的情况下,查找和插入的时间复杂度为O(1),是一种时间换空间的做法,而B树查找和插入的时间复杂度为O(logn),针对写优化的LSM树,插入的时间复杂度为O(1),采取日志的方式进行追加,但是查找的效率非常低,比如leveldb的设计中内存组件数据...原创 2020-04-22 20:05:49 · 624 阅读 · 0 评论 -
探讨图的最短路径和最小生成树问题
本篇博客将重点阐述图的最短路径算法和图的最小生成树算法…图的最短路径算法分为单源最短路和多源最短路,以及混搭的有无权图和有权图,具体的解决方法有Dijkstra算法,和Floyd算法;写在前面慕课课程浙江大学计算机《数据结构》最短路径问题1.无权图的单源最短路径单源最短路径本质上可以转化为BFS求层数.2.有权图的单源最短路径算法Dijkstra算法的本质是,S集合为包含源点...原创 2020-04-22 08:43:20 · 519 阅读 · 0 评论 -
洗牌算法(Fisher-Yates Shuffle,蓄水池抽样算法)
写在前面博客参考:https://blog.csdn.net/qq_26399665/article/details/79831490洗牌问题背景从n个不同数中随机不重复不回放的取出m个数,n>=m。洗牌算法的本质是:将原始的数组各个元素打散,是原数组各个数在打散数组中等概率出现。洗牌算法Fisher-Yates Shuffle算法基本思路:从原始数组中随机取出一个之前没有取过...原创 2020-04-21 21:36:34 · 573 阅读 · 0 评论 -
two pointer算法归纳总结
two pointer算法归纳总结create: 2018-10-17 19:27:24 记录two pointer算法的应用场景,算法思想。先进行简单归纳,后期有新的想法或者理解再进行追加。>two pointer的基本思想two pointer算法本质是设置两个指针i、j(初始时i在前j在后,i.e.,i<j)分别指向待解决问题的元素,然后将两指针同向或者反向移动,当i&gt...原创 2018-10-17 19:43:22 · 1101 阅读 · 0 评论