自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 希尔排序

希尔排序希尔排序的思想是使数组中任意间隔为h的元素都是有序的。实现希尔排序的方法是对于每个h子数组,用插入排序的方法将h个子数组进行排序(只需要在插入排序的代码中将移动元素的距离由1改为h即可),当h递减至1时,则排序完成。(插入排序详见https://blog.csdn.net/qq_44149376/article/details/115177844)代码如下:public class Shell { // 比较元素 private static boolean le

2021-03-24 15:15:53 71

原创 插入排序

插入排序原理:首先,选择索引为1的元素,将索引为1的元素插入到索引左边的元素当中(此时索引左边只有一个元素,两个元素比较、交换即可);再次,选择索引为2的元素,将索引为2的元素插入到索引左边的所有元素当中(索引左边的所有元素都是有序的,从当前索引的位置开始,逐个往前两两比较交换,直至插入完成);以此类推,直至索引达到数组的右端,排序完成。以下为代码:public class Insertion { // 比较元素 private static boolean less(Co

2021-03-24 15:13:45 96

原创 选择排序

选择排序原理:首先,找到数组中最小的那个元素,其次,与数组的第一个元素交换位置;接着,在剩下的元素中找到最小的元素,与数组的第二个元素交换位置;以此类推,直至将整个数组排完序。选择排序的核心——不断地选择剩余元素之中的最小者。以下为代码:public class Selection { // 比较元素 private static boolean less(Comparable v, Comparable w) { return v.compareTo(w

2021-03-24 15:12:48 83

原创 静态链表的讲解和实现

其实所谓静态链表,就是用数组代替指针,来描述单链表。首先,数组里面的元素是由两个数据域组成,data和cur,其中,data用来存放数据元素,也就是需要处理的数据;cur相当于单链表中的next指针,存放该元素的后继在数组中的下标,cur也叫做游标。这种用数组描述的链表叫做静态链表,这种实现链表的方法也叫游标实现法。1.静态链表存储结构和初始化// 静态链表的存储结构#define MAXSIZE 1000 // 链表的长度#define OK 1#define ERROR 0#define

2020-05-28 13:58:49 353

原创 Java基础知识之equals方法

《Java核心技术》1.equals方法介绍以及重写Object类中的equals方法是用于检测两个对象是否相等,在Object类中equals方法的具体实现是确定两个对象引用是否相等。不过,我们经常需要基于状态检测对象的相等性,如果两个对象的状态相同,才认为这两个对象相等。例如,如果两个员工对象的姓名、薪水和雇佣日期都一样,就认为它们相等。public class Employee {...

2020-05-06 21:45:17 766

原创 Java类使用工厂方法构造对象的原因

在Java中,静态方法有着一种常见的用途,类似于NumberFormat的类使用静态工厂方法来构造对象。例如:NumberFormat currencyFormatter = NumberFormat.getCurrencyInstance();NumberFormat percentFormatter = NumberFormat.getPercentInstance();double ...

2020-04-08 22:43:02 210

原创 关于Java中编写返回可变对象引用的访问器方法

警告:在Java中,注意不要编写返回可变对象引用的访问器方法。例如:class Employee { private Date hireDay; ... public Date getHireDay() { return hireDay; // 注意,Date类有一个更改器方法setTime,Date对象是可变的,这一点破坏了封装性 } ...}注意,在接下来,如果我...

2020-04-06 21:41:25 306

空空如也

空空如也

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

TA关注的人

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