晓莲说-何不原创:java 实现二维数组冒泡排序
新手从业路-为自己回顾知识的同时,也希望和大家分享经验:
话不多说,上代码
public class 冒泡排序 {
/**
* @param admin
* @2017.12.4
*/
public static void main(String[] args) {
int[][] array=new int[10][3]; //新建一个二维数组
//对数组进行赋值(以日期为例)
array[0][0]=2015;array[0][1]=10;array[0][2]=23;
array[1][0]=2016;array[1][1]=8;array[1][2]=14;
array[2][0]=2017;array[2][1]=3;array[2][2]=7;
array[3][0]=2018;array[3][1]=12;array[3][2]=19;
array[4][0]=2017;array[4][1]=9;array[4][2]=25;
array[5][0]=2017;array[5][1]=6;array[5][2]=1;
array[6][0]=2017;array[6][1]=4;array[6][2]=3;
array[7][0]=2017;array[7][1]=4;array[7][2]=7;
array[8][0]=2019;array[8][1]=10;array[8][2]=6;
array[9][0]=2017;array[9][1]=12;array[9][2]=15;
int i, j, exchange; //声明需要用到的变量,其中exchange相当于一个用于交换的容器
//利用冒泡排序原理对数据进行重新排列(日期最新的排在最前面)
for (i = array.length - 1; i >=1 ; i--) {
for (j = i; j <= array.length - 1; j++) {
if (array[j - 1][0] < array[j][0]) {
exchange = array[j][0]; array[j][0] = array[j - 1][0]; array[j - 1][0] = exchange; //更换顺序
exchange = array[j][1]; array[j][1] = array[j - 1][1]; array[j - 1][1] = exchange; //更换顺序
exchange = array[j][2]; array[j][2] = array[j - 1][2]; array[j - 1][2] = exchange; //更换顺序
}else{
if (array[j - 1][0] == array[j][0] && array[j - 1][1] < array[j][1]){
exchange = array[j][0]; array[j][0] = array[j - 1][0]; array[j - 1][0] = exchange; //更换顺序
exchange = array[j][1]; array[j][1] = array[j - 1][1]; array[j - 1][1] = exchange; //更换顺序
exchange = array[j][2]; array[j][2] = array[j - 1][2]; array[j - 1][2] = exchange; //更换顺序
}else{
if (array[j - 1][0] == array[j][0] && array[j - 1][1] == array[j][1] && array[j - 1][2] < array[j][2]){
exchange = array[j][0]; array[j][0] = array[j - 1][0]; array[j - 1][0] = exchange; //更换顺序
exchange = array[j][1]; array[j][1] = array[j - 1][1]; array[j - 1][1] = exchange; //更换顺序
exchange = array[j][2]; array[j][2] = array[j - 1][2]; array[j - 1][2] = exchange; //更换顺序
}
}
}
}
}
//打印出来看看效果
for(i=0;i<array.length;i++){
System.out.println(array[i][0]+"年"+array[i][1]+"月"+array[i][2]+"日");
}
}
}
显示的效果:
晓莲说-何不原创:java 实现二维数组冒泡排序的更多相关文章
- Java的二维数组的应用及杨辉三角的编写
(1) 编写一个程序,生成一个10*10的二维随机整数数组,并将该数组的每行最大值保存于一个一维数组中,将每列平均值保存于另外一个一维数组中并分别输出. (2) 编程输出杨辉三角的前10行. 找出一个 ...
- Java基础--二维数组
1.二维数组的定义 二维数组表示行列二维结构,在栈空间中的二维数组的地址指向堆空间中的一维数组,堆空间中的一维数组的地址又指向一维数组所在的内存空间. 2.二维数组的声明 二维数组声明有3种方式,推荐 ...
- java、二维数组详解!
/* java 二维数组的概念 使用方法! 1.什么是二维数组? 答案:数组的数组! 他的每一个元素都是数组!二维数组是(存储一维数组的)一维数组. 2.如何定义?(以二维数组为列) int arr[ ...
- 实验----Java的二维数组的应用及杨辉三角的编写
(1) 编写一个程序,生成一个10*10的二维随机整数数组,并将该数组的每行最大值保存于一个一维数组中,将每列平均值保存于另外一个一维数组中并分别输出. (2) 编程输出杨辉三角的前10行. 找出一个 ...
- 剑指offer编程题Java实现——二维数组中的查找
题目描述 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数. 下面是我实现的代码 ...
- 题目一:使用Java实现二维数组中的查找
考点:数组 题目:二维数组中的查找 描述:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判 ...
- Java Array二维数组使用
二维数组:元素为一维数组的数组 package myArray.arrayarray; /* *二维数组:元素为一维数组的数组 * * 定义格式: * A:数组类型[][] 数组名: (推荐用法) * ...
- [19/03/13-星期三] 数组_二维数组&冒泡排序&二分查找
一.二维数组 多维数组可以看成以数组为元素的数组.可以有二维.三维.甚至更多维数组,但是实际开发中用的非常少.最多到二维数组(我们一般使用容器代替,二维数组用的都很少). [代码示例] import ...
- 10-20C#基础---一维、二维数组&&冒泡排序
一.一维数组 1.定义:是某一种数据类型的数据的组合,数组用来分组基本类型或相同类型的对象.数组中的实体叫做数组的元素或成员. 2. 格式:int[ ] shuzu=new int[ 6];存放int ...
随机推荐
- IDEA启动后页面没有tomcat server选项,显示灰色问号和红叉不能使用
说明:自己好几次硬盘莫名其妙读不出来导致电脑重启后idea没有了tomcat选项,原来的tomcat上显示灰色的问号和红色小叉子,网上搜了好久加上自己摸索,终于解决了.现在记一下也分享一下,省的下回又 ...
- win7与centos虚拟机的共享文件夹创建
本文在win7环境下,在virtualbox5.0.16中的虚拟机centos6.7创建linux虚拟机与win7主机的共享文件夹. 首先点击virtualbox上"设置"按钮,在 ...
- Linux下如何高效删除一个几十G的文本文件的最后一行或几行
当我们在服务器端记录日志或文本数据时,有时候会有需要删除一个大文件的最后几行,这时如何才能高效实现. 上网浏览终于找到dd命令,亲测如下,删除一个32GB的日志文件最后100行仅需要4分钟 [root ...
- Windows7 64位环境下Python-igraph环境配置
本文为作者原创,转载请注明出处(http://www.cnblogs.com/mar-q/)by 负赑屃 其实配置很简单,但是网上的几个都不咋靠谱.而且我本身对这个软件挺感兴趣.igraph是一个网络 ...
- You can Solve a Geometry Problem too(判断两线段是否相交)
You can Solve a Geometry Problem too Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/3 ...
- html2cavans
简介:http://www.jianshu.com/p/6a07e974a7e8 下载:https://github.com/niklasvh/html2canvas/releases C#代理git ...
- 基于.net的通用内存缓存模型组件
谈到缓存,我们自然而然就会想到缓存的好处,比如: 降低高并发数据读取的系统压力:静态数据访问.动态数据访问 存储预处理数据,提升系统响应速度和TPS 降低高并发数据写入的系统压力 提升系统可用性,后台 ...
- redhat7 Samba
1.先安装Samba服务 yum install -y samba samba-client 2.配置文件 vi /etc/samba/smb.conf --主配置文件 [global] --全局 ...
- 用户需求与NABCD分析
用户需求与NABCD分析 目录 项目简介 用户需求分析 调研途径 问卷情况说明 问卷反馈与分析 NABCD分析 Need 需求 Approach 途径 Benefit 好处 Competitors 竞 ...
- C#执行PowserShell 脚本
Windows PowserShell能够很简洁 快速通过Script脚本方式获得我们想要执行效果. 如何在C#中任意执行PowerShell脚本.?类似目前我要在做一个进程管理工具. 通过Power ...