摘要:反转排序是将原先已经排序好了的重新排序,是原来的数组元素的顺序反转过来。假设原来的数组顺序是{6,5,4,3,2,1},反转之后的顺序就是{1,2,3,4,5,6}.这个排序的算法不是很难,代码量也不是很多。

  1. 排序原理:将第一个元素与最后一个元素调换位置,第二个元素和倒数第二个元素调换位置,然后依次类推,直到将所有的数组元素都调换位置。反转排序不会按升序或者降序排序。反转排序是对数组两边的元素进行替换,所有只需循环数组长度的半数次数。
  2. 适宜人群:有一定Java SE基础,明白Java的数据类型,数组的定义、初始化以及常用数组的方法,还有Java的循环操作。
  3. 前期准备:最好有一个开发工具比如说:eclipse或者myeclipse都可以,当然你使用DOS系统进行编译运行都可以,只不过改bug会麻烦一点。
  4. 反转排序的应用:其实很多排序的算法并不一定都会用到,但是这些算法能锻炼我们的逻辑思维能力。这个算法可以运用到我们的贪吃蛇游戏当中,头部可以当尾部,尾部可以当头部来使用。
  5. 算法实现:下面来介绍一下反转排序的具体用法。
 package liuenci.cn.package_3;

 public class ReverseSort {

     /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//创建一个数组
int[] array={100,90,80,70,60,50,40,30,20,10,0};
ReverseSort sorter=new ReverseSort();
//调用反转排序对象的方法将数组反转
sorter.sort(array);
}
public void sort(int[] array){
System.out.print("数组原来内容:");
showArray(array);//排序前的数组值
int temp;
int len=array.length;
for(int i=0;i<len/2;i++){
temp=array[i];
array[i]=array[len-1-i];
array[len-1-i]=temp;
}
System.out.print("数组反转后内容:");
showArray(array);
}
public void showArray(int[] array){
for(int i:array){
System.out.print(" "+i);
}
System.out.println();
}
}

最新文章

  1. 我的jQuery源码读后感-jquery1.11.x 集成了 AMD
  2. 兼容cookie和webStorage
  3. Sql server 备份还原后出现&ldquo;受限制用户&rdquo;问题
  4. php 的包管理工具 composer
  5. Find Query Window的运作(手电筒)
  6. 为什么内联函数,构造函数,静态成员函数不能为virtual函数
  7. Module ngx_http_index_module nginx的首页模块
  8. BZOJ 1588 营业额统计 Splay
  9. Django里,如何更改ADMIN管理后台的显示
  10. SET NOCOUNT用法
  11. C# C/S系统软件开发平台架构图(原创)
  12. 启动tomcat的 startup.bat屏幕一闪而过
  13. Windows Intellij环境下Gradle的 “Could not determine Java version from ‘9.0.1’”的解决方式
  14. Oracle学习笔记_07_模糊查询
  15. LabView ModBus安装
  16. kali linux 配置嵌入式开发环境
  17. 使用 VS Code 开发和调试 .NET Core 程序
  18. C语言中指针中的值赋值给数组
  19. SpringBoot系列: SpringBoot 启动慢的问题
  20. mybatis中设置打印sql语句application.yml

热门文章

  1. RAC连接时的2种方式Connect Time Failver和taf
  2. pgsql数据库备份还原记
  3. mysql实战45讲读书笔记(一) 一条SQL查询语句是如何执行的
  4. react-route4 按需加载配置心得
  5. Codeforces 703D Mishka and Interesting sum 离线+树状数组
  6. autocomplete=&quot;off&quot; 不起作用解决方案
  7. JavaScript 基础 if switch 弹窗 运算符
  8. 51nod 1158 全是1的最大子矩阵(单调栈 ,o(n*m))
  9. javascipt入门
  10. Github上值得关注的前端项目-转自好友trigkit4