自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 java自定义动态数组和链表(ArrayList、LinkedList)

本文通过手动实现简化版ArrayList和LinkedList,深入解析Java集合框架的底层原理。ArrayList基于动态数组实现,重点展示了动态扩容机制(1.5倍扩容)以及增删改查操作中数组元素搬移的实现逻辑。LinkedList采用单向链表结构,详细说明了节点插入、删除时的指针调整过程。通过对比两种数据结构的实现差异,揭示了ArrayList随机访问高效(O(1))与LinkedList插入删除灵活(O(1)头尾操作)的特性差异,为开发者根据不同场景选择合适数据结构提供了实践参考。

2025-05-28 14:11:31 1781

原创 C++树与二叉树详解(树的创建与删除,各种遍历,复制二叉树,线索二叉树,判断相似)

本文介绍了C++中树与二叉树的基本概念、存储结构和操作实现。主要内容包括:1)树的三种存储结构:双亲表示法、孩子链表表示法和最常用的孩子兄弟表示法;2)二叉树的逻辑结构特点、满二叉树和完全二叉树的定义及性质;3)二叉树的两种存储结构:二叉链表和三叉链表;4)二叉树的创建、删除操作的递归和非递归实现;5)二叉树的三种递归遍历方式(前序、中序、后序)和层序遍历的实现方法。文章通过代码示例和图示详细说明了各种数据结构的实现方式,为理解和应用树结构提供了基础参考。

2025-05-26 19:02:47 709

原创 Java实现HashMap

HashMap是一种基于哈希表实现的键值对存储结构,具有快速查找的特点。本文介绍了HashMap的基本概念、数据结构(数组+链表)、工作原理(哈希函数与冲突处理)以及常用方法(put/get/remove)。重点分析了扩容机制resize()的实现过程,包括数组扩容、重新哈希等步骤。代码实现部分展示了自定义HashMap的核心逻辑,包括哈希计算、链表处理、扩容触发条件等关键功能。该实现支持null键值存储,并通过链表解决哈希冲突问题。

2025-05-25 18:08:39 1430

原创 java图像界面设计——五子棋小游戏

本项目使用java swing 实现五子棋游戏,包括"开始",“悔棋”,“复盘”,“双人模式”,“人机模式”,“暂停保存”,"继续游戏"的基本功能。本项目代码分为ChessUI类(界面),GameListener类(监听器),AI类(人机模式的算法),Shapes类(保存棋局数据),GameWin类(判断输赢)和一个config接口(棋盘规格常量)。本项目用Java Swing实现五子棋游戏,涵盖多种功能。

2025-05-10 23:11:02 1715

原创 Java 类与对象和类的继承

面向对象程序设计将程序看做是一系列对象组成,而不是一系列动作组成。对象(实例):一个包含状态(数据)和行为(方法)的编程实体,是具体的。类:具有相同特征的事物的抽象描述,是抽象的。一个类里可以有多个对象方法(函数)该类事物的行为。对应类中的成员方法。类的定义示例代码:1.3 构造方法两种构造方法:无参构造方法,有参构造方法;在对象的生命周期中只调用一次;名字与类名相同;无返回值;每个类都有一个默认的无参构造函数。在用户没有定义有参构造方法时,new对象时会自动调用无参构造方法;

2025-03-24 22:33:14 687

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除