如何用Java实现反转排序
摘要:反转排序是将原先已经排序好了的重新排序,是原来的数组元素的顺序反转过来。假设原来的数组顺序是{6,5,4,3,2,1},反转之后的顺序就是{1,2,3,4,5,6}.这个排序的算法不是很难,代码量也不是很多。
- 排序原理:将第一个元素与最后一个元素调换位置,第二个元素和倒数第二个元素调换位置,然后依次类推,直到将所有的数组元素都调换位置。反转排序不会按升序或者降序排序。反转排序是对数组两边的元素进行替换,所有只需循环数组长度的半数次数。
- 适宜人群:有一定Java SE基础,明白Java的数据类型,数组的定义、初始化以及常用数组的方法,还有Java的循环操作。
- 前期准备:最好有一个开发工具比如说:eclipse或者myeclipse都可以,当然你使用DOS系统进行编译运行都可以,只不过改bug会麻烦一点。
- 反转排序的应用:其实很多排序的算法并不一定都会用到,但是这些算法能锻炼我们的逻辑思维能力。这个算法可以运用到我们的贪吃蛇游戏当中,头部可以当尾部,尾部可以当头部来使用。
- 算法实现:下面来介绍一下反转排序的具体用法。
1 package liuenci.cn.package_3; 2 3 public class ReverseSort { 4 5 /** 6 * @param args 7 */ 8 public static void main(String[] args) { 9 // TODO Auto-generated method stub 10 //创建一个数组 11 int[] array={100,90,80,70,60,50,40,30,20,10,0}; 12 ReverseSort sorter=new ReverseSort(); 13 //调用反转排序对象的方法将数组反转 14 sorter.sort(array); 15 } 16 public void sort(int[] array){ 17 System.out.print("数组原来内容:"); 18 showArray(array);//排序前的数组值 19 int temp; 20 int len=array.length; 21 for(int i=0;i<len/2;i++){ 22 temp=array[i]; 23 array[i]=array[len-1-i]; 24 array[len-1-i]=temp; 25 } 26 System.out.print("数组反转后内容:"); 27 showArray(array); 28 } 29 public void showArray(int[] array){ 30 for(int i:array){ 31 System.out.print(" "+i); 32 } 33 System.out.println(); 34 } 35 }
作者:RichardCui
出处:https://www.cnblogs.com/yachao1120/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。该文章也同时发布在我的独立博客中-RichardCuiBlog。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步