手写 Java 版数据结构,包含数组、栈、队列、链表、二叉搜索树、集合、映射、优先队列、堆、线段树、字典树、并查集、AVL、红黑树、哈希表。
- 封装自己的数组,支持泛型,实现动态数组,包含以下功能:添加、查询、修改、删除
- 实现基于数组的数组栈、数组队列、循环队列
- LeetCode20练习
- 实现自己的链表,支持添加、查询、修改、删除
- 使用链表实现栈,使用链表实现队列
- 使用链表的递归练习
- 将代码模块化,易于管理
- LeetCode203练习
实现二分搜索树以下操作:
- 添加、前中后序遍历、层次遍历
- 前序遍历的非递归实现
- 删除二分搜索树的最大、最小节点
- 删除二分搜索树的任意元素
- LeetCode804练习
- 实现基于二叉搜索树、链表的集合Set实现
- 实现基于二分搜索树、链表的映射Map
- LeetCode349、350练习