zoukankan      html  css  js  c++  java
  • java数组排序(冒泡、直排)反转

    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方法分割成几个数组

  • 相关阅读:
    一个简单的MVVM雏形
    sass学习笔记1
    col标签的相关实验
    背景半透明rgba最佳实践
    angular性能优化心得
    环视非捕获分组
    5月23日Google就宣布了Chrome 36 beta
    浏览器 user-agent 字符串的故事
    迷你MVVM框架 avalonjs 沉思录 第3节 动态模板
    迷你MVVM框架 avalonjs 1.3.1发布
  • 原文地址:https://www.cnblogs.com/gaofangquan/p/7231442.html
Copyright © 2011-2022 走看看