
数据结构
文章平均质量分 90
vivi在写代码
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
java自定义动态数组和链表(ArrayList、LinkedList)
本文通过手动实现简化版ArrayList和LinkedList,深入解析Java集合框架的底层原理。ArrayList基于动态数组实现,重点展示了动态扩容机制(1.5倍扩容)以及增删改查操作中数组元素搬移的实现逻辑。LinkedList采用单向链表结构,详细说明了节点插入、删除时的指针调整过程。通过对比两种数据结构的实现差异,揭示了ArrayList随机访问高效(O(1))与LinkedList插入删除灵活(O(1)头尾操作)的特性差异,为开发者根据不同场景选择合适数据结构提供了实践参考。原创 2025-05-28 14:11:31 · 1801 阅读 · 0 评论 -
Java实现HashMap
HashMap是一种基于哈希表实现的键值对存储结构,具有快速查找的特点。本文介绍了HashMap的基本概念、数据结构(数组+链表)、工作原理(哈希函数与冲突处理)以及常用方法(put/get/remove)。重点分析了扩容机制resize()的实现过程,包括数组扩容、重新哈希等步骤。代码实现部分展示了自定义HashMap的核心逻辑,包括哈希计算、链表处理、扩容触发条件等关键功能。该实现支持null键值存储,并通过链表解决哈希冲突问题。原创 2025-05-25 18:08:39 · 1458 阅读 · 0 评论 -
C++树与二叉树详解(树的创建与删除,各种遍历,复制二叉树,线索二叉树,判断相似)
本文介绍了C++中树与二叉树的基本概念、存储结构和操作实现。主要内容包括:1)树的三种存储结构:双亲表示法、孩子链表表示法和最常用的孩子兄弟表示法;2)二叉树的逻辑结构特点、满二叉树和完全二叉树的定义及性质;3)二叉树的两种存储结构:二叉链表和三叉链表;4)二叉树的创建、删除操作的递归和非递归实现;5)二叉树的三种递归遍历方式(前序、中序、后序)和层序遍历的实现方法。文章通过代码示例和图示详细说明了各种数据结构的实现方式,为理解和应用树结构提供了基础参考。原创 2025-05-26 19:02:47 · 718 阅读 · 0 评论