首页 / 算法 / java数组排序(冒泡、直排)反转
java数组排序(冒泡、直排)反转
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java数组排序(冒泡、直排)反转,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2419字,纯文字阅读大概需要4分钟。
内容图文
package lianxi; public class maopao { public static void main(String[] args){ int[] i=new int[]{45,67,54,35,26,76,85}; for(int a=0;a<i.length;a++){ for(int b=0;b<i.length;b++){ if(i[a]<i[b]){ int temp=i[a]; i[a]=i[b]; i[b]=temp; } } }go(i); } public static void go(int[] l){ for(int o=0;o<l.length;o++){ System.out.print(l[o]+" "); } } }
冒泡排序就是用两个for循环第一层循环每一次循环拿一个数然后用第二个循环跟数组中的其他数进行比较,直到循环结束,排序就完成了。
package day24; //直接排序 public class paixu { public static void main(String[] args){ int[] i=new int[]{45,35,67,86,46,25,47,37,85};// for(int m=0;m<i.length;m++){ int indexmax=m; for(int n=m+1;n<i.length;n++){ if(i[indexmax]<i[n]){ indexmax=n;//把循环中第一个索引换成了最大值的索引 } } int temp=i[m]; i[m]=i[indexmax];//把最大值赋给循环中第一个值。 i[indexmax]=temp;//把第一个值放在其他位置 } xunhuan(i); } public static void xunhuan(int[] t){ for (int l=0;l<t.length;l++){ System.out.println(t[l]);} }}
直接排序就是直接拿数去比较完就放到应该放到的位置上,直到循环结束
package lianxi; //反转排序 public class fanzhuan { public static void main(String[] args){ int[] i=new int[]{5,4,8,3,9,5,23}; int lm=i.length; for(int a=0;a<lm/ 2;a++){ int temp=i[i.length-a-1]; i[i.length-a-1]=i[a]; i[a]=temp; } go(i); } public static void go(int[] s){ for(int b=0;b<s.length;b++){ System.out.println(s[b]); } } }
数组的反转,让循环的次数小于数组长度的一半,然后让循环次数对应的索引值的数组值跟对着的数交换就好了。
package lianxi; public class ShuZu { String[] xzName = { "白羊", "金牛", "双子", "巨蟹", "狮子", "处女", "天秤", "天蝎", "射手", "摩羯", "水瓶", "双鱼" }; String[] xzDate = { "03月21日─04月20日", "04月21日─05月20日", "05月21日─06月21日", "06月22日─07月22日", "07月23日─08月22日", "08月23日─09月22日", "09月23日─10月22日", "10月23日─11月21日", "11月22日─12月21日", "12月22日─01月19日", "01月20日─02月18日", "02月19日─03月20日" }; } package lianxi; import java.util.Scanner; public class TestShuzu { public static void main(String[] args){ ShuZu sz=new ShuZu(); Scanner sc=new Scanner(System.in); System.out.println("请输入星座名字,并用逗号隔开"); String X_name=sc.nextLine(); if(X_name.length()==2){ for(int i=0;i<sz.xzName.length;i++){ if(X_name.equals(sz.xzName[i])){//属性.equals就是指的属性的值 System.out.print(sz.xzDate[i]); } } } else if(X_name.length()>2){ String[] y=X_name.split(","); for(int w=0;w<y.length;w++){ String ow = null; for(int q=0;q<sz.xzName.length;q++){ if(y[w].equals(sz.xzName[q])){ ow=sz.xzDate[q]; } } System.out.println(ow); } } sc.close(); } }
输入星座名,输入对应的月份,可以输入多个星座查询,主要是得想到string可以用split方法分割成几个数组
原文:http://www.cnblogs.com/gaofangquan/p/7231442.html
内容总结
以上是互联网集市为您收集整理的java数组排序(冒泡、直排)反转全部内容,希望文章能够帮你解决java数组排序(冒泡、直排)反转所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。