数据结构
文章平均质量分 93
本专栏通过150篇精心设计的理论与实践结合的文章,全面覆盖数据结构核心内容。从基础数据结构到算法设计,带你深入理解计算机数据结构,培养解决复杂计算问题的能力,提升编程水平。
QuantumLeap丶
14年软件开发与系统架构经验,专注于人工智能与大规模系统设计。主导过多个AI产品的技术架构,在自然语言处理、推荐系统、分布式计算等领域有丰富实战经验。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【数据结构:从0到1】-15-高级哈希函数
本文带你掌握四种哈希技术背后原理及其应用场景:1)普通哈希通过分桶提升查找效率,但存在哈希碰撞问题;2)全域哈希采用随机函数家族防御恶意攻击,确保冲突概率可控;3)完美哈希为静态数据集提供零冲突的O(1)查找,通过两级哈希实现;4)可扩展哈希通过目录结构和局部扩容实现动态调整,避免全表重建。这些技术体现了哈希表在效率、安全性和扩展性方面的不同权衡方案。原创 2025-12-15 18:00:16 · 1063 阅读 · 0 评论 -
【数据结构:从0到1】-14-直接寻址与哈希函数
哈希表是一种高效的数据结构,通过键值对存储数据,利用哈希函数实现快速访问。其核心思想是将键映射到数组特定位置,通过哈希函数和冲突解决策略(如链地址法)来处理键冲突。原创 2025-11-20 17:55:22 · 79 阅读 · 0 评论 -
【数据结构:从0到1】-13-位运算与位数据结构
深入解析位运算核心技巧与位数据结构实现,涵盖位图高效存储、布隆过滤器概率判断等关键技术。通过实际案例展示如何利用位级操作优化存储空间、提升查询性能,解决海量数据处理中的内存与效率瓶颈,为高性能系统设计提供底层优化方案。原创 2025-11-18 16:38:37 · 1022 阅读 · 0 评论 -
《数据结构:从0到1》-12-高级字符串算法
本文深入解析了四种高级字符串搜索算法的核心原理。Rabin-Karp算法通过巧妙的滚动哈希技术,将窗口滑动时的哈希计算复杂度从O(m)降至O(1);Boyer-Moore算法采用逆向比较策略,结合坏字符和好后缀规则实现智能跳跃;后缀数组通过对文本预处理建立全局索引,支持快速多模式查询;正则表达式引擎则通过有限自动机实现复杂模式匹配。文章通过生动的可视化图表和实际案例,揭示了这些算法如何将看似简单的字符串搜索转化为高效的计算过程,为处理大规模文本搜索提供了关键技术支持。原创 2025-11-17 15:38:39 · 737 阅读 · 0 评论 -
《数据结构:从0到1》-11-字符串与模式匹配
本文介绍了字符串的基本概念及其存储方式,重点讨论了字符串匹配问题。包含三种方式:①朴素模式匹配算法,其时间复杂度高达O(n*m)。②KMP算法,利用next数组存储模式串的自匹配信息,避免主串指针回溯,将时间复杂度优化至O(n+m)。③字符串哈希算法:通过将字符串映射为整数进行快速比较,利用滚动哈希在O(1)时间内更新子串哈希值,实现了平均O(n+m)的高效匹配原创 2025-11-12 17:21:30 · 927 阅读 · 0 评论 -
《数据结构:从0到1》-10-双端队列与单调队列
双端队列允许在队头和队尾进行插入和删除操作,底层通常采用双向链表实现以支持高效操作。单调队列在双端队列基础上维护元素单调性,能高效解决滑动窗口类问题。这两种数据结构在算法优化中具有重要价值。原创 2025-11-11 10:57:13 · 921 阅读 · 0 评论 -
《数据结构:从0到1》-09-队列
队列(Queue)遵循先进先出(FIFO)原则,核心操作包括入队(enqueue)和出队(dequeue)。在计算机领域有广泛应用,如消息队列、CPU调度等实际应用场景。原创 2025-11-10 14:41:13 · 1111 阅读 · 0 评论 -
《数据结构:从0到1》-08-栈
栈是一种遵循LIFO(后进先出)原则的线性数据结构,就像叠放的盘子或手枪弹夹,在计算机科学中有着广泛的应用。从函数调用到浏览器历史,从表达式求值到算法实现,栈无处不在。原创 2025-10-25 09:11:53 · 643 阅读 · 0 评论 -
《数据结构:从0到1》-07-链表进阶与优化
还记得面试时面试官让你写链表反转吗?其实这些高级操作都有规律可循。今天我就把这些"套路"都告诉你!掌握这些高级技巧,让你的代码更高效!原创 2025-10-23 15:17:55 · 739 阅读 · 0 评论 -
《数据结构:从0到1》-06-单链表&双链表
链表作为数据结构家族中的重要成员,是每个程序员必须掌握的硬核技能。理解指针操作是掌握链表的关键,多动手实践,在纸上画出指针的变化过程,你会对链表有更深的理解。原创 2025-10-23 14:14:20 · 604 阅读 · 0 评论 -
《数据结构:从0到1》-05-数组
数组编程世界的万能收纳架,你真的会用吗?数组是一种线性数据结构,将相同类型的数据元素存储在连续内存空间中,通过索引实现快速访问。原创 2025-10-23 07:29:20 · 1049 阅读 · 0 评论 -
《数据结构:从0到1》-04-性能测量&基准测试
别再拍脑袋选算法了!实战性能测量与基准测试全攻略,助你从"凭感觉"优化转向数据驱动的性能决策,避免线上性能问题。原创 2025-10-21 14:18:15 · 967 阅读 · 0 评论 -
《数据结构:从0到1》-03-渐进分析&递归方程
本文系统介绍了算法复杂度分析的数学基础,重点讲解了渐进符号和递归方程的主定理方法,全面阐述了算法复杂度分析的理论框架和实践方法。原创 2025-10-21 13:37:49 · 1133 阅读 · 0 评论 -
《数据结构:从0到1》-02-算法复杂度分析入门
为什么需要复杂度分析?复杂度分析是计算机科学中评估算法效率的数学工具,它帮助我们预测算法在不同规模输入下的性能表现。原创 2025-10-18 21:25:27 · 485 阅读 · 0 评论 -
【数据结构:从0-1】-01-数据结构介绍及学习路线规划
数据结构:程序设计的骨架与灵魂,计算机科学的核心基础,决定了数据如何存储、组织和访问。本文系统介绍了数据结构的定义、分类及其重要性。主要内容包括: 数据结构分类:分为线性结构(数组、链表、栈、队列等)和非线性结构(树、图等),以及文件结构,每种结构有其特定应用场景。 抽象数据类型(ADT):定义了数据操作的接口规范而不关心具体实现,如栈和队列的ADT描述其行为而非实现方式。 性能影响:通过实际例子展示不同数据结构带来的性能差异。 掌握数据结构对于编写高效程序至关重要,是解决90%软件性能问题的关键。原创 2025-10-17 18:41:39 · 543 阅读 · 0 评论
分享