单链表的实现与常见接口的详细图解剖析
单链表的常见接口详细讲解,深度解剖,不仅有好的代码风格,还有精美的配图,给你带来直观的感受!
史上最强数据结构----算法的时间复杂度和空间复杂度
史上最强数据结构----算法的时间复杂度和空间复杂度
数据结构,简单的顺序表该怎么写
数据结构的实际两种结构1.物理结构 (内存中是如何存储的)2.逻辑结构 (脑海里想象的)线性表物理结构:数组,链表数组的缺点在于,开辟空间过大,会浪费存储空间,开辟空间过小,满足不了存储的需求。链表能满足按需索取内存的要求而链表能满足需求的重点在于指针的使用前一块空间会存储下一个空间的指针,一节节穿
【LeedCode每周总结】还在犹豫怎么刷LeedCode有没有用?快来加入每日刷题卷进大厂吧,冲冲冲
排序API的作用就是传入一一个数组,并姐对数组按照给定的规则进行就地排序。挑了一些很不错又很实用的基础题目,捎带着还有一些实用的算法,大家一起前来复习一下吧~我们可以用Java自带的API对数组进行排序,然后出现次数大于N/2的元素自然就会在中间了LeedCode169. 多数元素LeedCode9
线性表之带头双向循环链表
初学者必备:线性表之带头双向循环链表接口实现和一些链表必备思想
你真的了解时间复杂度吗?
数据结构时间复杂度和空间复杂度的深度解剖!
“入门”数据结构—时间复杂度
( •̀ ω •́ )✧今天我们来学习一下数据结构最初始部分-时间复杂度。1:为什么要引入时间复杂度概念?算法在编写成可执行程序后,运行时需要耗费时间资源和空间(内存)资源 。因此衡量一个算法的好坏,一般是从时间和空间两个维度来衡量的,即时间复杂度和空间复杂度。时间复杂度主要衡量一个算法的运行快慢,
[ 数据结构-C实现 ] 算法的时间复杂度
目录1、算法的复杂度2、时间复杂度2.1 时间复杂度的定义2.2 大O的渐进表示法3、常见时间复杂度计算举例3.1 冒泡排序的时间复杂度3.2 二分查找的时间复杂度3.3 阶乘(递归)的时间复杂度3.4菲波那切数列的时间复杂度1、算法的复杂度算法在编写成可执行程序后,运行时需要耗费时间资源和空间(内
【二叉树】【回溯】二叉树的所有路径详解【力扣.257】超详细的宝藏教程
【二叉树】【回溯】二叉树的所有路径详解【力扣.257】超详细的宝藏教程干货满满,不收藏绝对后悔!
【OJ - 二叉树】二叉树的前、中、后序遍历
文章目录一、二叉树的前序遍历1.1 题目描述1.2 解题思路二、二叉树的中序遍历2.1 题目描述2.2 解题思路三、二叉树的后序遍历3.1 题目描述3.2 解题思路这三道OJ题解题思路类似,你只要会其中一道,其它两道也就会了一、二叉树的前序遍历题目难度:简单1.1 题目描述给你二叉树的根节点 roo
【Java数据结构】玩转泛型-泛型的手术刀剖析
文章目录 一、泛型是什么? 二、泛型是如何编译的 三、泛型的上界 四、泛型方法 五、通配符 1.概念 2.通配符上界 3.通配符下界 最后
数据结构 Java数据结构 --- 枚举
文章目录枚举1. 枚举的背景及定义2. 枚举的使用2.1 switch语句2.2 常用的方法2.2.1 values()的使用2.2.2 ordinal()的使用2.2.3 valueOf()的使用2.2.4 compareTo()的使用2.2.5 构造方法2.3 注意事项3. 枚举的优缺点优点:缺
数据结构 Java数据结构 --- 反射
文章目录反射1. 反射的定义2. 反射的用途3. 反射基本信息4. 反射相关的类4.1 Class类4.1.1 Class类中的相关方法常用获得类相关的方法常用获得类中属性相关的方法(以下方法返回值为Field相关)获得类中注解相关的方法获得类中构造器相关的方法(以下方法返回值为Constructo
数据结构Java版排序(二)
目录1.快排的优化2.归并排序①原理②性能分析3.七大排序总结4.其余非基于比较的排序①计数排序②基数排序③桶排序1.快排的优化此部分内容紧接上节中文末提及的快排内容优化方案①:随机选取(仍是对于基准而言)问题:当随机选取到该数组序列中最大的数或者最小的数时就并改变原先的时间复杂度O(N²),空间复
【Java数据结构】二叉树丶二叉树进阶——大厂经典OJ面试题
【Java数据结构】二叉树丶二叉树进阶——大厂经典OJ面试题文章目录判断两颗数是否相同另一棵树的子树求二叉树的最大深度判断一颗二叉树是否是平衡二叉树对称二叉树大厂OJ面试题二叉树的创建及遍历二叉树的分层遍历进阶(返回二维数组)二叉树的层序遍历二叉树的最近公共祖先(LCA问题)判断两颗数是否相同题目:
红黑树(C++)
文章目录红黑树红黑树的概念红黑树的性质红黑树结点的定义红黑树的插入操作情况一情况二情况三红黑树的验证用红黑树封装map、set红黑树的迭代器封装map封装set红黑树红黑树的概念红黑树的概念 红黑树,是一种二叉搜索树,但在每个结点上增加一个存储位表示结点的颜色,可以是Red或Black。 通过对任何
HashTable - 哈希表 - 细节狂魔
文章目录哈希表 / 散列表 的概念实践理解哈希表的运行原理由上面实践,我们得知了 哈希表 存在 哈希冲突的概念,下面我们讲讲 哈希冲突的概念 和 解决办法。冲突 - 概念冲突 - 避免冲突 - 避免 - 哈希函数的设计常见的哈希函数哈希表 / 散列表 的概念 顺序结构以及平衡树中,元素关键码与其存储
经典八大排序
经典九大排序文章目录经典九大排序排序的种类:直接插入排序希尔排序简单选择排序堆排序冒泡排序快速排序归并排序计数排序基数排序排序的种类:直接插入排序1.该序列第一个元素不用考虑(a1之前不存在子序列),则从第二个元素开始,先把a2的值存在key中,a2>a1则有序不动,a2<a1就把a1往
链表(上)----单向链表(跑路人笔记)
动态顺序表在头部中部插入数据时和扩容时总会产生一些资源的浪费或性能的浪费所以我们可以用链表进行代替.(顺序表自然也有其优势从不同方面讲总是各有各优点的)链表优点空间上,按需求给空间(不会造成空间的浪费不要求物理空间连续头部中部插入时不需要挪动数据.链表链表是通过结构题创建的一种物理储存结构上非连续的