![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
荒诞离场?
切莫玩物丧志
展开
-
数据结构之数组
数据结构是一个很重要,而且很基础的知识点。让我们一起来慢慢的探索吧,对于数据结构这个底层的知识点,我个人也不是很了解。一点点的积累和学习吧。 数据结构可以根据存储结构方式分为: 线性表和非线性表 线性表里面有 : 数组、链表、队列、栈等结构 (图片来源网络) 定义:线性表就是数据排成像一条线一样的结构。每个线性表最多只有前后两个方向。 非线性表:二叉树、堆、图等。 定义:数据之间不...原创 2019-08-29 15:21:30 · 209 阅读 · 0 评论 -
数据结构之链表
作为线性结构家族的又一个成员,链表终于闪亮登场了。那么链表这个数据结构到底有什么用呢? 链表到底长什么样子呢?链表有什么特点呢? 不要着急 ,我一一的解答。 首先来我们来了解一下链表的作用,抱着对链表时使用场景来学习它。提到链表我们肯定能想到LinkedList里面的底层是链表,什么增删快,查询慢,这是背烂了的面试题吧。链表除了这个还有一些使用场景,比如LUR缓存淘汰算法。 缓存,这个词在这个...原创 2019-08-29 16:17:03 · 128 阅读 · 0 评论 -
数据结构之栈
如何理解栈结构? 关于栈最贴切的方式就是叠盘子,我们放盘子的时候,先放上去的盘子在下面,然后取盘子是从上往下取。也就是先入后出。 从栈的操作特性上,栈是一种操作受限的线性表,只允许在一端插入和删除。 如何实现一个栈? 从栈的定义中,栈主要包括两个操作,入栈和出栈。也就是在栈顶插入数据,在栈顶删除一个数据。 实际上我们可以用数组实现,也可以用链表实现。数组实现的栈是顺序栈,链表实现的栈是链...原创 2019-08-29 22:16:23 · 85 阅读 · 0 评论 -
数据结构之队列
讲队列之前 我们思考一个问题,现在有一个固定大小的线程池中请求一个线程时,如果线程池中没有空闲资源了,这个时候线程如何处理这个请求,是拒绝请求还是排队请求? 答案大家应该很清除。会在队列中等待。那么这就引出了我们今天要讨论的队列。 如何理解队列? 我们可以把队列理解为排队买票,先来的先排队先买,后来的只能站在队尾最后买票。先进者先出。 我们知道栈只支持两个操作:入栈push()和出栈pop(...原创 2019-08-30 11:56:55 · 144 阅读 · 0 评论