![](https://img-blog.csdnimg.cn/20200101192358452.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
数据结构与算法之美
把算法拿下!
Fe_cow丿
头发是比青春更容易流失的东西,不要等失去了才想着去珍惜!
展开
-
数据结构: 队列 讲解
数据结构: 队列 讲解一、概念:先进者先出,这就是 队列。把它想象成排队买票,先来的先买,后来的人只能站末尾,不允许插队。队列跟栈非常相似,支持的操作也很有限,最基本的操作也是两个:入队 enqueue(),放一个数据到队列尾部;出队 dequeue(),从队列头部取一个元素;所以,队列跟栈一样,也是一种操作受限的线性表数据结构。二、顺序队列和链式队列:跟栈一样,队列可...原创 2019-12-31 17:20:30 · 444 阅读 · 0 评论 -
数据结构:栈 讲解
数据结构:栈 讲解一、概念:后进者先出,先进者后出,这就是典型的“栈”结构。从栈的操作特性上来看,栈是一种操作受限的线性表,只允许在一端插入和删除数据。数组或链表确实可以替代栈。特定的数据结构是对特定场景的抽象,而且,数组或链表暴露了太多的操作接口,操作上的确灵活自由,但使用时就比较不可控,自然也就更容易出错。二、栈的实现:栈主要包含两个操作,入栈和出栈,也就是在栈顶插入一个数据...原创 2019-12-28 19:58:32 · 558 阅读 · 0 评论 -
数据结构:链表讲解
数据结构:链表讲解一、缓存淘汰策略:缓存的大小有限,当缓存被用满时,哪些数据应该被清理出去?哪些数据应该保留?这就需要缓存淘汰策略来决定。简单理解:就是当缓存被用满时清理数据的优先顺序。先进先出策略 FIFO(First In, First Out)最少使用策略 LFU(Least Frequently Used)最近最少使用策略 LRU(Least Recently Used)...原创 2019-12-28 14:37:13 · 488 阅读 · 0 评论 -
时间复杂度的讲解
正文: 时间复杂度的意义 究竟什么是时间复杂度呢?让我们来想象一个场景:某一天,小灰和大黄同时加入了一个公司......一天过后,小灰和大黄各自交付了代码,两端代码实现的功能都差不多。大黄的代码运行一次要花100毫秒,内存占用5MB。小灰的代码运行一次要花100秒,内存占用500MB。于是......由此...转载 2019-12-18 16:57:30 · 347 阅读 · 0 评论 -
数据结构:数组讲解
数据结构—数组讲解一、概念:数组(Array)是一种线性表数据结构。它用一组连续的内存空间,来存储一组具有相同类型的数据。1.线性表与非线性表:线性表就是数据排成像一条线一样的结构。每个线性表上的数据最多只有前和后两个方向。其实除了数组,链表、队列、栈等也是线性表结构。非线性表,比如二叉树、堆、图等。之所以叫非线性,是因为,在非线性表中,数据之间并不是简单的前后关系。2.连续内存空...原创 2019-12-19 09:38:20 · 632 阅读 · 0 评论