数据结构与算法

详解数据结构之跳表

目录跳表的定义跳表的演化过程跳表的优化思路跳表如何保证效率跳表的时间复杂度跳表的空间复杂度跳表的查找跳表的插入跳表的删除跳表的模拟实现跳表与平衡搜索树及哈希表的对比跳表的定义跳表是由William Pugh(音译为威廉·普)发明的,最早出现于他在1990年发表的论文《Skip Lists: A Probabilistic Alternative to Balanced Trees》&

【优选算法必刷100题】第007~008题(双指针算法):三数之和,四数之和

🔥个人主页:Cx330🌸❄️个人专栏:《C语言》《LeetCode刷题集》《数据结构-初阶》《C++知识分享》《优选算法指南-必刷经典100题》🌟心向往之行必能至🎥Cx330🌸的简介:目录007.三数之和解法:(排序+双指针&

【算法】【动态规划】斐波那契数模型

目录 一、动态规划解题模版 二、第N个泰波那契数 三、⾯试题 08.01. 三步问题 四、746. 使⽤最⼩花费爬楼梯(easy) 五、91.解码⽅法 一、动态规划解题模版 状态表示:我们一般创建一个一维数组dp,把dp表填满,其中的某一个值就是结果。而状态表示就是指这个dp表中元素的含义; 1.1.

《算法闯关指南:优选算法--二分查找》--23.寻找旋转排序数组中的最小值,24.点名

🔥草莓熊Lotso:个人主页 ❄️个人专栏: 《C++知识分享》 《Linux 入门到实践:零基础也能懂》 ✨生活是默默的坚持,毅力是永久的享受! 🎬 博主简介: 文章目录 前言: 23. 寻找旋转排序数组中的最小值 解法&#

【优选算法必刷100题】第025~26题(前缀和算法):【模版】前缀和、【模板】二维前缀和

🔥艾莉丝努力练剑:个人主页❄专栏传送门:《C语言》、《数据结构与算法》、C/C++干货分享&学习过程记录、Linux操作系统编程详解、笔试/面试常见算法:从基础到进阶⭐️为天地立心,为生民立命,为往圣继绝学,为万世开太平🎬艾莉丝的简介:&#x1f

【C++ DFS 图论】1519. 子树中标签相同的节点数|1808

本文涉及知识点C++DFS C++图论 LeetCode1519. 子树中标签相同的节点数给你一棵树(即,一个连通的无环无向图),这棵树由编号从 0 到 n - 1 的 n 个节点组成,且恰好有 n - 1 条 edges 。树的根节点为节点 0 ,树上的每一个节点都有一个标签&#

【算法】二分查找(一)朴素二分

目录一、题目介绍二、朴素二分1.原理二段性时间复杂度(logn)2.模板四、提交代码一、题目介绍704. 二分查找 - 力扣(LeetCode)给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target  ,写一个函数搜索 nums 中的 target,如果 target 存在返回下标&#xf

【数据结构入坑指南(五)】--《手把手实现栈结构:附带完整代码与注释,深度揭秘数组实现香在哪?》

🔥@晨非辰Tong:个人主页 👀专栏:《C语言》、《数据结构与算法》、《数据结构与算法刷题集》💪学习阶段:C语言、数据结构与算法初学者⏳“人理解迭代,神理解递归。” 引言:当熟练驾驭了结构复杂、指针纵横的双链表后,是否意味着需要更复杂的数据结构来挑战自己&

哈希表完全指南:从入门到刷题实战

文章目录 前置知识要求 为什么叫Hash? 和数组有什么关系? 数组是怎么组织数据的? 但如果我知道索引呢? 矛盾点 哈希表的做法 对比总结 哈希表在代码中长什么样?(Java) 在 Java 中,哈希表的表现形式为**键值对&#xff08

我爱学算法之—— 模拟(下)

一、外观数列 题目解析对于这道题,给定一个n,要求我们返回外观数列的第n个元素。所谓外观数列,countAndSay(n)是countAndSay(n-1)行程长度编码。而行程长度编码,简单来说就是将一个字符串中连续相同字符,修改成出现的次数+字符。例如:字符串"21" :