随笔分类 - 算法
摘要:链表 经典的链表应用场景:LRU缓存淘汰算法。 缓存是一种提高数据读取性能的技术,在硬件设计、软件开发中都有着非常广泛的应用,比如常见的 CPU 缓存、数据库缓存、浏览器缓存等等。 缓存的大小有限,当缓存被用满时,哪些数据应该被清理出去,哪些数据应该被保留?这就需要缓存淘汰策略来决定。常见的策略有三
阅读全文
摘要:数组 数组(Array)是一种线性表数据结构。它用一组连续的内存空间,来存储一组具有相同类型的数据。 关键点1 线性表(Linear List):顾名思义,线性表就是数据排成像一条线一样的结构。每个线性表上的数据最多只有前和后两个方向。其实除了数组,链表、队列、栈等也是线性表结构。 非线性表:比如二
阅读全文
摘要:大纲 基本概念 数据结构与算法 什么是数据结构?什么是算法? 广义上讲,数据结构就是指一组数据的存储结构。算法就是操作数据的一组方法。 数据结构是为算法服务的,算法要作用在特定的数据结构之上。 数据结构是静态的,它只是组织数据的一种方式。如果不在它的基础上操作、构建算法,孤立存在的数据结构就是没用的
阅读全文