zoukankan      html  css  js  c++  java
  • 数组排序 与Arrays工具类

    反转  冒泡排序,Arrays工具类的应用

    public class Paixu {
    	//反转排序
    	public static void main(String[] args) {
    		int arr [] = {2,1,5,6,9,7,4};  //长度为7
    		//	    	  0 1 2 3 4 5 6
    		for( int i = 0; i<arr.length/2;i++) {
    			int temp = arr[i];
    			arr[i] = arr[arr.length - i - 1];
    			arr[arr.length - i - 1] = temp;
    		}//2与4换,1与7换,5与9换
    		
    		p(arr); 
    		//冒泡排序
    		 int attr [] = {9,8,7,6,5,4,3,20,100};
    		  
    		 for(int  i=0;i<attr.length-1;i++)
    		 {
    		     for(int j=0;j<attr.length-1;j++)
    		     {
    		         if(attr[j]<attr[j+1]) //从大到小的顺序排列
    		         {
    		            int zj = attr[j];
    		             attr[j] = attr[j+1];
    		             attr[j+1] = zj;
    		         }  
    		     }  
    		 }
    		p(attr);
    		//此工具类要引入
    		Arrays.sort(arr);  //按从小到大的顺序排列出来
    	Arrays.fill(arr, 2, 5, 90); //给数组添值,从索引值2到索引值4,不包括5,都改为90;
    	int[] arrNew = Arrays.copyOf(arr, 13);  //复制数组,添加的长度为13,不足位的用0补齐
    	int[] arrNew = Arrays.copyOfRange(arr, 2, 5); //数组的范围复制,索引值从2到5,不包括5
    	int[] arr = {2,1,5,111,6,9,7,4,10}; // 1 2 4 5 6 7 9 10 111
    	// 必须先排序 !!!!!
    			Arrays.sort(arr);
    			int i = Arrays.binarySearch(arr, 111);  //排完序之后 111的索引值
    			System.out.println(i);//二分搜索法,必须先排序
    	}
    	public  static void  p( int a [] ) {  //构造一个方法,如果以后还有数组想进行反转,直接传一个数组进去就可
    		for(int i = 0;i<a.length;i++) {
    			System.out.print(a[i] + " ");
    		}
    	}
    }
    

    选择排序

    public class SelectSoter {
    	//选择排序,一般是按从小到大的顺序排序.拿索引值0的值与其他数比,把小的值拿前面来,
    	//再依次从索引值1跟其他的比,没有返回类型的.
    	public static void main(String[] args) {
    		int[] a = { 354, 53, 24, 164, 13, 21 };
    		System.out.println(Arrays.toString(a));
    		System.out.println("以上是原始数据");
    		
    		for (int i = 0; i < a.length - 1; i++) {
    			int index = i;
    			for (int j = i + 1; j < a.length; j++) {
    				if (a[index] > a[j]) {
    					index = j;
    				}
    			}
    			int temp = a[i];
    			a[i] = a[index];
    			a[index] = temp;
    			System.out.println(Arrays.toString(a));
    		}
    
    	}
    
  • 相关阅读:
    SCI写作经典替换词,瞬间高大上!(转)
    最佳化常用测试函数 Optimization Test functions
    算法复杂度速查表
    VS 代码行统计
    CPLEX IDE 菜单栏语言设置( 中文 英文 韩文 等多国语言 设置)
    如何从PDF文件中提取矢量图
    Matlab无法打开M文件的错误( Undefined function or method 'uiopen' for input arguments of type 'char)
    visual studio 资源视图 空白 解决方案
    MFC DialogBar 按钮灰色不响应
    嗨翻C语言笔记(二)
  • 原文地址:https://www.cnblogs.com/zuo72/p/7900855.html
Copyright © 2011-2022 走看看