数据结构与算法之美
文章平均质量分 67
凭栏听雨客
code hugger
展开
-
【LeetCode每日一题】【BFS模版与例题】【二维数组】1293. 网格中的最短路径
二维数组中BFS的扩展,需要记录每个节点剩余的特权原创 2024-03-05 23:17:09 · 588 阅读 · 0 评论 -
【LeetCode每日一题】【BFS模版与例题】【二维数组】130被围绕的区域 && 994 腐烂的橘子
通过两道题练习了二维数组中BFS非递归的使用并且腐烂的句子还使用了多源BFS原创 2024-03-04 23:22:17 · 654 阅读 · 0 评论 -
【LeetCode每日一题】【BFS模版与例题】863.二叉树中所有距离为 K 的结点
BFS通常使用的场景- 寻找两个节点之间的最短路径。- 在树或图中寻找特定深度或层级的节点。- 检查图是否是连通的。- 拓扑排序。- 解决迷宫问题等。原创 2024-03-01 21:33:35 · 641 阅读 · 0 评论 -
【leetcode每日一题】【滑动窗口长度固定】643.子数组最大平均数
解释:最大平均数 (12-5-6+50)/4 = 51/4 = 12.75。输入:nums = [1,12,-5,-6,50,3], k = 4。给你一个由 n 个元素组成的整数数组 nums 和一个整数 k。如果比较符号在子数组中的每个相邻元素对之间翻转,则该子数组是。维护的本质上就是滑动窗口里的子数组。,左指针向前为了符合要求:长度为k。请你找出平均数最大且 长度为 k。,并输出该最大平均数。需要维护的变量是sum。原创 2024-02-26 23:19:49 · 553 阅读 · 0 评论 -
【LeetCode】【滑动窗口长度不固定】978 最长湍流子数组
最长的指定瑕疵度的元音子串,是滑动窗口中长度不定求最大的题目原创 2024-02-26 20:14:20 · 477 阅读 · 0 评论 -
【leetcode每日一题】【滑动窗口长度固定】案例
滑动窗口在长度被限定下的案例原创 2024-02-25 21:58:34 · 497 阅读 · 0 评论 -
【leetcode每日一题】【滑动窗口长度不固定】案例
简单介绍一下滑动窗口在求最大值和最小值的应用原创 2024-02-25 21:28:05 · 845 阅读 · 0 评论 -
单调栈总结以及Leetcode案例解读与复盘
单调栈总结以及案例复盘(一文读懂单调栈),通过数个leetcode案例对单调栈进行讲解原创 2024-02-21 23:38:03 · 1622 阅读 · 0 评论 -
【LeetCode每日一题】单调栈 581. 最短无序连续子数组
通过图解讲解了最短无序连续子数组这道题,更深入理解了如何使用单调栈原创 2024-02-19 23:35:06 · 327 阅读 · 0 评论 -
为什么很多编程语言数组从0开始
数组什么是数组如何实现随机访问低效的插入和删除警惕数组越界关于容器和数组什么是数组什么是数组?它的定义就是线性表+连续的内存空间+相同数据类型的数据。什么是线性表?线性表就是数据排成像一条线一样的结构。每个线性表上的数据最多只有前和后两个方向。其实除了数组,链表、队列、栈等也是线性表结构。而与它相对立的概念是非线性表,比如二叉树、堆、图等。之所以叫非线性,是因为,在非线性表中,数据之间并不是...原创 2020-05-01 23:47:21 · 281 阅读 · 0 评论 -
数据结构与算法之美--1.时间复杂度分析
时间复杂度分析为什么要进行时间复杂度的分析大O复杂度表示法如何分析一段代码的时间复杂度?几种常见时间复杂度实例分析。空间复杂度最好、最坏时间复杂度平均时间复杂度均摊时间复杂度为什么要进行时间复杂度的分析如果我们直接将代码跑一遍,通过统计,监控,就能够得到算法执行的时间和占有的内存,为什么还需要进行时间、空间复杂度的分析?因为上述评估算法的方式称为事后统计法,具有很大局限性。测试结果非常依...原创 2020-05-01 22:12:01 · 279 阅读 · 0 评论