随笔分类 -  数据结构

1
摘要:目录1. 题目列表2. 应用2.1. Leetcode 295. 数据流的中位数2.1.1. 题目2.1.2. 解题思路2.1.3. 代码实现 1. 题目列表 题目列表: 序号 题目 难度 1 295. 数据流的中位数 困难 2. 应用 2.1. Leetcode 295. 数据流的中位数 2.1. 阅读全文
posted @ 2024-01-29 15:44 LARRY1024 阅读(40) 评论(0) 推荐(0)
摘要:目录1. 题目列表2. 应用2.1. Leetcode 226. 翻转二叉树2.1.1. 题目2.1.2. 解题思路2.1.2.1. 方法一:前序遍历2.1.2.2. 方法二:后序遍历2.1.3. 代码实现2.2. Leetcode 116. 填充每个节点的下一个右侧节点指针2.2.1. 题目2.2 阅读全文
posted @ 2024-01-27 15:00 LARRY1024 阅读(48) 评论(0) 推荐(0)
摘要:目录1. 题目2. 应用2.1. Leetcode 124. 二叉树中的最大路径和2.1.1. 题目2.1.2. 解题思路2.1.3. 代码实现2.2. Leetcode 100. 相同的树2.2.1. 题目2.2.2. 解题思路2.2.3. 代码实现2.3. Leetcode 105. 从前序与中 阅读全文
posted @ 2024-01-25 19:41 LARRY1024 阅读(31) 评论(0) 推荐(0)
摘要:目录应用应用1:Leetcode 678. 有效的括号字符串题目分析方法一:栈方法二:动态规划代码实现 应用 应用1:Leetcode 678. 有效的括号字符串 题目 678. 有效的括号字符串 分析 方法一:栈 维护两个栈:\(stack_1\) 和 \(stack_2\),分别保存左括号元素的 阅读全文
posted @ 2023-09-11 15:52 LARRY1024 阅读(20) 评论(0) 推荐(0)
摘要:目录数据结构算法 数据结构 数组 链表 链表应用 链表应用 II 链表应用 III 栈 栈的应用 队列 哈希表 页面置换算法:LRU和LFU 并查集 堆 优先级队列的应用 单调栈 单调栈及其应用 单调队列 线段树 二叉搜索树 二叉查找树 平衡树 跳表 跳跃表 算法 算法基础 滑动窗口 滑动窗口算法 阅读全文
posted @ 2023-09-11 15:34 LARRY1024 阅读(26) 评论(0) 推荐(0)
摘要:目录应用应用1:Leetcode 1834. 单线程 CPU题目分析代码实现应用2:Leetcode 621. 任务调度器题目分析代码实现 应用 应用1:Leetcode 1834. 单线程 CPU 题目 1834. 单线程 CPU 给你一个二维数组 tasks ,用于表示 n 项从 0 到 n - 阅读全文
posted @ 2023-06-15 15:53 LARRY1024 阅读(42) 评论(0) 推荐(0)
摘要:目录应用应用1:396. 旋转函数题目分析代码实现 应用 应用1:396. 旋转函数 题目 396. 旋转函数 给定一个长度为 n 的整数数组 nums 。 假设 arrk 是数组 nums 顺时针旋转 k 个位置后的数组,我们定义 nums 的 旋转函数 F 为: F(k) = 0 * arrk[ 阅读全文
posted @ 2023-06-08 18:21 LARRY1024 阅读(16) 评论(0) 推荐(0)
摘要:目录链表应用应用1:Leetocde 21. 合并两个有序链表题目分析代码实现方法一:迭代实现方法一:递归实现应用2:Leetocde 23. 合并 K 个升序链表题目分析方法一:分治方法二:优先级队列代码实现方法一:分治方法二:优先级队列应用3:Leetocde 141. 环形链表题目分析代码实现 阅读全文
posted @ 2023-05-23 16:15 LARRY1024 阅读(36) 评论(0) 推荐(0)
摘要:目录链表应用 II应用 2:Leetcode 25. K 个一组翻转链表题目分析代码实现应用2:Leetcode 234. 回文链表题目分析方法一:数组方法二:递归方法三:快慢指针代码实现方法一方法二方法三应用3:Leetcode 143. 重排链表题目分析代码实现 链表应用 II 应用 2:Lee 阅读全文
posted @ 2023-04-12 23:17 LARRY1024 阅读(26) 评论(0) 推荐(0)
摘要:目录字典树(Trie)应用应用1:Leetcode.642题目题目分析代码实现应用2:Leetcode.1268题目分析代码实现总结字典树的应用 字典树(Trie) 字典树(Trie),也称为“前缀树”,是一种特殊的树状数据结构,对于解决字符串相关问题非常有效。它能够提供快速检索,主要用于搜索字典中 阅读全文
posted @ 2023-04-12 20:06 LARRY1024 阅读(75) 评论(0) 推荐(0)
摘要:目录应用应用1:Leetocde1206题目解题思路代码 应用 应用1:Leetocde1206 题目 1206. 设计跳表 解题思路 参考: Java手写实现跳表 代码 import random from typing import List class Skiplist(object): # 阅读全文
posted @ 2023-03-09 20:08 LARRY1024 阅读(24) 评论(0) 推荐(0)
摘要:链表 链表相关的典型应用如下: | 序号 | 题目 | | : : | | | 1 | 203. 移除链表元素 | | 2 | 86. 分隔链表 | | 3 | 206. 反转链表 | | 4 | 160. 相交链表 | | 5 | 92. 反转链表 II | 应用 应用1:Leetocde.203 阅读全文
posted @ 2023-02-28 23:02 LARRY1024 阅读(38) 评论(0) 推荐(0)
摘要:目录单调栈简介伪代码应用应用1:Leetcode.496题目分析代码实现复杂度分析应用2:Leetcode.503题目分析代码实现应用4:Leetcode.2454题目分析代码实现应用4:Leetcode.739题目分析代码实现应用5:Leetcode.316题目分析代码实现应用6:Leetcode 阅读全文
posted @ 2023-02-01 00:23 LARRY1024 阅读(266) 评论(0) 推荐(0)
摘要:目录二叉搜索树定义性质常用结论二叉树的常用操作二叉查找树的有效性校验递归的思路迭代的思路二叉查找树的查找查找最大值查找最小值二叉查找树的插入递归的思路迭代的思路二叉查找树的删除代码实现递归实现迭代实现 二叉搜索树 定义 一棵二叉查找树(\(BST\))是一个二叉树,其中每个结点都含有一个\(Camp 阅读全文
posted @ 2022-12-07 23:25 LARRY1024 阅读(76) 评论(0) 推荐(0)
摘要:[TOC] # 二叉树 # 求解思路 二叉树的问题,可以分为两类: - 回溯的思想:通过遍历一次二叉树所有节点,求解答案; - 分治的思想:通过定义一个带返回值的递归函数,将问题分解为子问题(子树),递归推导出答案。 # 二叉树的访问 二叉树有四种访问顺序: - 前序遍历 - 中序遍历 - 后续遍历 阅读全文
posted @ 2022-11-26 11:33 LARRY1024 阅读(29) 评论(0) 推荐(0)
摘要:目录并查集(Union-Find)算法简介思路代码实现应用应用1:Leetcode.130题目分析代码实现应用2:Leetcode.323题目分析代码实现应用3:Leetcode.261题目分析代码实现应用4:Leetcode.684题目分析代码实现应用5:Leetcode.684题目分析代码实现 阅读全文
posted @ 2022-11-22 23:08 LARRY1024 阅读(266) 评论(0) 推荐(0)
摘要:目录页面置换算法简介LRU和LFU算法算法实现LRU算法题目:Leetcode.16.25思路代码实现LFU算法题目:Leetcode.460思路流程代码实现优化后的代码 页面置换算法简介 在地址映射过程中,若在页面中发现所要访问的页面不在内存中,则产生缺页中断。当发生缺页中断时,如果操作系统内存中 阅读全文
posted @ 2022-11-19 17:19 LARRY1024 阅读(606) 评论(0) 推荐(0)
摘要:目录简介差分数组性质差分数组工具类应用应用1:Leetcode.1109题目题目分析代码实现应用2:Leetcode.370题目题目分析代码实现应用3:Leetcode.1094题目题目分析代码实现 简介 差分数组 与前缀和数组类似,差分数组里的每个元素,是原数组的后项与前项之差,即: \[diff 阅读全文
posted @ 2022-11-16 22:59 LARRY1024 阅读(97) 评论(0) 推荐(0)
摘要:目录简介应用应用1:Leetcode.303题目分析代码实现应用2:Leetcode.523题目分析算法步骤代码实现应用3:Leetcode.304题目分析先求二维矩阵的前缀和任意子矩阵的和代码实现应用4:Leetcode.974题目分析方法一方法二代码实现方法一方法二 简介 求区间和,一般的思路都 阅读全文
posted @ 2022-11-16 21:45 LARRY1024 阅读(50) 评论(0) 推荐(0)

1