数据结构
文章平均质量分 87
牛小小小婷~
这个作者很懒,什么都没留下…
展开
-
力扣:两数之和与n数之和的(Map)与(排序+双指针)解法 【三刷终于明白HashMap求和的去重问题】
> - 两数之和【返回数组下标】使用HashMap解决就很巴适,真简单!> - 排序+双指针给n数之和铺路【返回数组元素】> - 排序之后数组下标对应的元素发生改变!!!原创 2023-01-03 20:49:36 · 376 阅读 · 0 评论 -
JS如何反转字符串以及如何将数字转换为数字数组
## [两数相加](https://leetcode.cn/problems/add-two-numbers/)> 给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。请你将两个数相加,**并以相同形式返回一个表示和的链表。**你可以假设除了数字 0 之外,这两个数都不会以 0 开头原创 2022-10-31 10:15:57 · 143 阅读 · 0 评论 -
利用回溯解决子集II遇到的二维数组去重问题
[] 与 [] 存储的内存地址不同,所以 !==> - 那[一维数组的去重方法](https://blog.csdn.net/hannah2233/article/details/125495662)在二维数组这里是不适用的原创 2022-10-27 11:19:40 · 212 阅读 · 0 评论 -
全排列引发的Set与Map与数组的思考【递归,map与set数据结构】
全排列问题: 给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列。你可以 按任意顺序 返回答案。是一种类似数组的数据结构,区别在于其存储的成员都是不重复的,由此带来了它的一个应用就是:去重。Set通过new关键字实例化,入参可以是数组or类数组的对象。值得注意的是:在Set中,只能存储一个NaN,这说明在Set数据结构中,NaN等于NaN。操作方法add()、delete()、has()和clear();keys()、values()、entries()和forEach()原创 2022-10-24 10:42:09 · 618 阅读 · 0 评论 -
3.29-4.17刷题记录
2022.3.29一、 LRU缓存淘汰算法面试题 16.25. LRU 缓存剑指 Offer II 031. 最近最少使用缓存/** * @param {number} capacity */var LRUCache = function(capacity) { this.capacity = capacity; this.map = new Map();};/** * @param {number} key * @return {number} */LRUCa原创 2022-04-17 23:14:59 · 1014 阅读 · 2 评论 -
【贰】 数据结构leetcode刷题系列--详解+例题
文章目录贰 数据结构系列2-1 手写LRU(`Least Recently Used`)缓存淘汰算法2-1-1 讲解2-1-2 相关例题一、 [146. LRU 缓存](https://leetcode-cn.com/problems/lru-cache/)2-2 手写LFU缓存淘汰算法2-2-1 思路分析2-2 二叉搜索树合集2-2-1 判断二叉搜索树的合法性2-2-2 在BST中查找一个数是否存在2-2-3 在BST中插入一个数2-2-4 在BST中删除一个数2-3 完全二叉树的节点[222. 完全原创 2022-04-17 23:12:40 · 3096 阅读 · 0 评论 -
两周刷题记录
两周整了这么点,我真废物。还有,操蛋微信开发者工具,淦,我都在忙什么???md,还有操作系统和硬件,真TM难,又是骂骂咧咧的一晚上,这文章怕怕不能发出去,🤣,睡!2022.3.17146. LRU 缓存请你设计并实现一个满足 LRU (最近最少使用) 缓存 约束的数据结构。实现 LRUCache 类:LRUCache(int capacity) 以 正整数 作为容量 capacity 初始化 LRU 缓存int get(int key) 如果关键字 key 存在于缓存中,则返回关键字的.原创 2022-03-27 23:35:22 · 1620 阅读 · 0 评论 -
数据结构系列三---[一周leetcode刷题记录3.7-3.13]
系列完结撒花,准备开启整理模式2022.3.7一、 206. 反转链表二、 剑指 Offer 24. 反转链表/** * Definition for singly-linked list. * function ListNode(val) { * this.val = val; * this.next = null; * } *//** * @param {ListNode} head * @return {ListNode} */var reverseL.原创 2022-03-13 20:22:29 · 1181 阅读 · 1 评论 -
数据结构系列二---[一周leetcode刷题记录]
2022.2.27一、 496. 下一个更大元素 Inums1 中数字 x 的 下一个更大元素 是指 x 在 nums2 中对应位置 右侧 的 第一个 比 x 大的元素。给你两个 没有重复元素 的数组 nums1 和 nums2 ,下标从 0 开始计数,其中nums1 是 nums2 的子集。对于每个 0 <= i < nums1.length ,找出满足 nums1[i] == nums2[j] 的下标 j ,并且在 nums2 确定 nums2[j] 的 下一个更大元素 。如果不存原创 2022-03-06 22:30:33 · 166 阅读 · 0 评论 -
动态规划详解
对应的刷题记录可查看 :dp 刷题记录笔记稍有些乱,感谢同学借的书《labuladog算法狗》,比生看leetcode题解好很多的壹、 DP动态规划1-1 B站1-1-1、 动态规划的常见类型规划基础背包问题打家劫舍股票问题子序列问题1-1-2 DP数组含义dp数组以及下标的含义递推公式dp数组如何让初始化遍历顺序1-2 labuladog算法狗1-2-1 解题套路框架1-2-1-1 前序动态规划的一般形式是求最值求最长递增子序列,最小编辑距离核心.原创 2022-02-20 23:22:14 · 1299 阅读 · 0 评论 -
dp 刷题记录
仅为记录,某些图片可以自行粘贴gitee网址查看,需要密码就…算了????一、 动态规划原问题可以分解成规模较小的两个子问题,且子问题的解可以复用2022.1.18 斐波那契一、 剑指 Offer 10- I. 斐波那契数列写一个函数,输入 n ,求斐波那契(Fibonacci)数列的第 n 项(即 F(N))。斐波那契数列的定义如下:F(0) = 0, F(1) = 1F(N) = F(N - 1) + F(N - 2), 其中 N > 1.斐波那契数列由 0 和 1 开原创 2022-02-20 23:19:22 · 3085 阅读 · 0 评论 -
【Java数据结构实现二】-- 线性表 -- 顺序表+单链表+双向链表(增删改查遍历等)
参考视频: 【黑马程序员】2020最新数据结构与算法教程(求职面试必备)参考leetcode学习资料: 图解算法数据结构注意 目录结构呦!!!按本文目录 在src文件夹下 创建项目和文件,直接粘代码即可运行文章目录算法和数据结构简述+排序的笔记MywritelinearSequenceList(顺序表)LinkList(单链表)TwoWayLinkList(双向链表)算法和数据结构简述+排序的笔记【Java数据结构笔记一】-- 数据结构与算法概述–【时间复杂度+空间复杂度】【Java.原创 2021-11-27 12:51:00 · 577 阅读 · 0 评论 -
【Java数据结构笔记三】-- 线性表
参考视频: 【黑马程序员】2020最新数据结构与算法教程(求职面试必备)参考leetcode学习资料: 图解算法数据结构文章目录第三章 线性表3-1 线性表3-2 顺序表3-2-1 顺序表的实现3-2-2 顺序表的时间复杂度3-2-3 java中ArrayList实现(顺序表)3-3 链表3-3-1 链式存储结构3-3-2 单向列表3-3-3 双向链表【程序第二遍写的时候有bug,第三遍搞定】3-3-4 java中的LinkList实现3-3-5 链表的复杂度分析3-3-6 链表反转【我就是看不懂.原创 2021-11-27 12:22:52 · 439 阅读 · 0 评论 -
【Java数据结构实现一】-- 排序 -- 冒泡+选择+插入+希尔+归并+快速
参考视频: 【黑马程序员】2020最新数据结构与算法教程(求职面试必备)参考leetcode学习资料: 图解算法数据结构注意 目录结构呦!!!按本文目录 在src文件夹下 创建项目和文件,直接粘代码即可运行文章目录算法和数据结构简述+排序的笔记MywritesortBubble(冒泡)Selection(选择)Insertion(插入)Shell(希尔)Merge(归并)Quick(快速)算法和数据结构简述+排序的笔记【Java数据结构笔记一】-- 数据结构与算法概述–【时间复杂度+空.原创 2021-11-27 11:53:29 · 553 阅读 · 0 评论 -
【Java数据结构笔记二】-- 排序 --冒泡+选择+插入+希尔+归并+快速
参考视频: 【黑马程序员】2020最新数据结构与算法教程(求职面试必备)参考leetcode学习资料: 图解算法数据结构文章目录第二章 排序2-1 Compareble接口2-2 冒泡排序2-3 选择排序2-4 插入排序(Insertion sort)2-5 希尔排序(Shell缩小增量排序)2-5-1 希尔排序的API设计2-5-2希尔排序的时间复杂度分析2-6 归并排序(这是第四五遍,我懂了!!!离打谱事件!)2-6-1 归并排序--递归(StackFlowOver)2-6-2 归并排序【分治.原创 2021-11-27 10:57:41 · 228 阅读 · 0 评论 -
【Java数据结构笔记一】-- 数据结构与算法概述--【时间复杂度+空间复杂度】
参考视频: 【黑马程序员】2020最新数据结构与算法教程(求职面试必备)参考leetcode学习资料: 图解算法数据结构文章目录一. 数据结构和算法概述1.1 数据结构简介 :1-2 算法1-3 算法的时间复杂度分析1-4 算法时间复杂度 -- 函数渐进增长1-5 算法时间复杂度 -- 大O记法1-6 算法时间复杂度 -- 常见的大O阶1-7 算法时间复杂度 -- 函数调用的时间复杂度分析1-8 算法的空间复杂度分析 -- Java中常见内存占用1-9 算法的空间复杂度一. 数据结构和算法概述.原创 2021-11-27 10:40:06 · 802 阅读 · 0 评论