首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
数据结构与算法
榆树底
创建于2022-04-22
订阅专栏
算法学习笔记
暂无订阅
共6篇文章
创建于2022-04-22
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
数据结构与算法:递归
递归是一种应用非常广泛的算法(或者说编程技巧)。很短数据结构和算法的编码实现都要用到递归,比如DFS深度优先搜索、前后中序二叉树遍历等等。 递归的优点:代码表达能力强,写起来简洁,执行起来高效。 写递归代码的关键是找到如何将大问题分解为小问题的规律,写出递推公式,找到终止条件,…
数据结构与算法:队列:队列在线程池等有限资源池中的应用
我们都知道,CPU资源是有限的,任务的处理速度与线程个数并不是线性正相关。相反,过多的线程反而会导致CPU频繁切换,处理性能下降。所以线程池的大小一般都是综合考虑要处理任务的特点和硬件环境,来事先设置的。 实际上,这些问题并不复杂,其底层的数据结构就是我们今天要了解的内容,队列…
数据结构和算法:栈:如何实现浏览器的前进和后退功能?
对浏览器的前进、后退功能,你一定很熟悉。当你访问完一串页面a-b-c之后。点击浏览器的后退按钮,就可以查看之前浏览过的页面b和a,当后退到页面a的时候,点击前进按钮,就可以重新查看页面b和c。但是,若后退到b之后,点击了新的页面d,那就无法再通过前进、后退功能查看页面c了。如果…
数据结构和算法:链表(下)
事实上,看懂链表的结构并不是很难,但是一旦把它和指针混在一起,就和容易让人摸不着头脑。所以,要写好代码,首先就要理解好指针。 有些语言有“指针”的概念 ,比如C语言;有些语言没有指针,取而代之的是“引用”。实际上,它们的意思都是一样的,都是存储所指对象的内存地址。 对于指针的理…
数据结构和算法:链表(上)
缓存是一种提高数据读取性能的技术,在硬件设计、软件发开发中都有着非常广泛的应用,比如常见的CPU缓存、数据库缓存、浏览器缓存等等。 缓存的大小有限,当缓存被用满时,那些数据应该被清理出去,哪些数据应该被保留?这就需要缓存淘汰策略来决定,常见的缓存淘汰策略有三种:先进先出策略FI…
数据结构和算法:数组
数组(Array)是一种线性表数据结构,他用一组连续的内存空间,来存储一组具有相同类型的数据。 关键词1:线性表:数组、链表、栈、队列等都是线性表结构;每个线性表上的数据最多只有前和后两个方向。 关键词2:连续的内存空间和相同类型的数据。 由于数组具有上述两个限制,所以数组才具…