java使用冒泡排序引用类型的数组
TestDateSort.java
//对日期进行排序 public class TestDateSort { public static void main(String[] args) { //引用类型数组 Date[] days = new Date[5]; days[0] = new Date(2006, 5, 4); days[1] = new Date(2006, 7, 4); days[2] = new Date(2008, 5, 4); days[3] = new Date(2004, 5, 9); days[4] = new Date(2004, 5, 4); //冒泡排序 bubbleSort(days); for(int i=0; i<days.length; i++) { //打印对象的引用,相当与直接调用toString(),需要重写toString() System.out.println(days[i]); } } //冒泡排序 public static Date[] bubbleSort(Date[] a){ int len = a.length; //从底往上 for(int i = len-1;i>=1;i--){ //数组序号从小到大 for(int j = 0;j<=i-1;j++){ //比较日期大小 if(a[j].compare(a[j+1]) > 0){ //下标值没变,指向的对象改变了 Date temp = a[j]; a[j]=a[j+1]; a[j+1]=temp; } } } return a; } } //定义日期类 class Date { int year, month, day; Date(int y, int m, int d) { year = y; month = m; day = d; } //比较日期大小 public int compare(Date date) { return year > date.year ? 1 : year < date.year ? -1 : month > date.month ? 1 : month < date.month ? -1 : day > date.day ? 1 : day < date.day ? -1 : 0; } //重写toString() public String toString() { return "Year:Month:Day -- " + year + "-" + month + "-" + day; } }
F:\java>javac TestDateSort.java F:\java>java TestDateSort Year:Month:Day -- 2004-5-4 Year:Month:Day -- 2004-5-9 Year:Month:Day -- 2006-5-4 Year:Month:Day -- 2006-7-4 Year:Month:Day -- 2008-5-4 F:\java>
相关推荐
里面有几个很好的javaSe基础题目,比如有javaSe的冒泡排序,求数组的最大值,求数组的最小只,求数组是否对称等等算法实例。
### 二维数组冒泡排序详解 #### 一、引言 冒泡排序是一种简单的排序算法,在数据处理领域有着广泛的应用。对于一维数组而言,冒泡排序实现起来相对容易;然而,当涉及到二维数组时,排序的过程就变得复杂起来。...
在Java中,我们通常使用`for`循环来实现冒泡排序。下面是一个简单的Java代码示例,用于对一个整型数组进行升序排序: ```java public class BubbleSort { public static void bubbleSort(int[] arr) { int n = ...
使用冒泡排序实现的java语言编写的关于二维数组的排序,实现了行、列的排序输出。
java冒泡排序 代码为排序源代码 简洁明了 无其他
通过这样的步骤,你可以创建一个简单的Java应用程序,它能够接收一组预定义的数组元素,使用冒泡排序算法对其进行排序,然后输出排序前后的元素,便于观察和理解排序过程。 总结:本教程深入浅出地介绍了冒泡排序...
以下是一个简单的Java冒泡排序实现: ```java public class BubbleSort { public static void main(String[] args) { int[] array = new int[]{5, 2, 8, 3, 9, 1}; // 待排序的数组 int n = array.length; ...
本主题将详细介绍三种基本的排序算法:快速排序、选择排序和冒泡排序,以及它们在Java中的实现。 1. **快速排序**: 快速排序是一种高效的分治算法,由C.A.R. Hoare在1960年提出。其主要思想是通过一趟排序将待排...
冒泡排序是一种直观的排序方法,通过重复遍历数组,每次比较相邻两个元素并根据需要交换它们的位置,使得较大的元素逐渐“浮”到数组的顶端。其核心是两层循环结构,外层控制遍历次数,内层负责相邻元素的比较与交换...
Java数组排序:冒泡排序、选择排序 、插入排序 、快速排序、希尔排序、堆排序和归并排序 三种Java数组复制方法 Java数组最大最小值 四种合并Java数组方法 Java数组升降序排序 Java数组查找:二分查找、顺序查找、...
3.请编写程序,利用冒泡算法实现对数组{25,24,12,76,101,96,28} 的排序。
下面是一个简单的Java冒泡排序实现: ```java public class BubbleSort { public static void bubbleSort(int[] array) { int n = array.length; for (int i = 0; i ; i++) { // 外层循环控制遍历次数 for (int...
总的来说,这段代码提供了四种排序算法的实现,分别是冒泡排序、选择排序、插入排序以及Java内置的数组排序。每种排序算法都有其适用场景,理解这些算法可以帮助我们更好地解决实际问题,并根据需求选择合适的排序...
java实现数组从小到大排序,输出为数组。可以直接拿来用,注释清楚,可读性强,适用于基础练习,课堂作业等
2. **选择排序算法**:有许多排序算法可供选择,如冒泡排序、插入排序、选择排序、快速排序、归并排序等。对于小规模的数据或部分排序,简单排序算法如插入排序可能就足够了。对于大规模数据,效率更高的算法如快速...
arithmetic java算法冒泡排序、二叉树、数组、链表、队列学习简单示例 private static void mpSoft(String [] data) { for (int i = 0; i ; i++) { System.out.println(Arrays.toString(data)); for (int j = 0; ...
冒泡排序(Bubble Sort)是一种简单的排序算法,其基本思想是通过不断地交换相邻两个元素的位置,使得每一轮遍历后最大的元素能够“浮”到数组的末尾。这种排序方法之所以被称为“冒泡排序”,就是因为数据像水中的...
冒泡排序是一种简单的排序算法,通过不断交换相邻两个元素的位置来逐步将较大的元素推向数组的后部。它的主要思想是重复遍历数组,每次比较相邻的元素,如果顺序错误就交换。Java实现时,通常会设置一个标志位来...
### Java冒泡排序方法详解 #### 一、冒泡排序简介 冒泡排序是一种简单的排序算法,它重复地遍历待排序的数列,依次比较相邻的两个元素,如果它们的顺序错误就把它们交换过来。遍历数列的工作是重复进行的,直到...
冒泡排序是一种基础且...在给出的`paixu.txt`文件中,可能包含了使用Java实现冒泡排序的具体代码示例,或者是一些关于冒泡排序的测试用例和输出结果。通过分析这个文件,可以进一步了解如何在实际项目中应用冒泡排序。