zoukankan      html  css  js  c++  java
  • 四种简单的排序算法

    package data;
    
    public class Sort {
    	
    	String endline = System.getProperty("line.separator");
    	//选择排序
    	public void selectSort(int[] arr){
    		int len = arr.length;
    		int k;
    		int tmp;
    		for(int i = 0;i<len;i++){
    			
    			for(int l:arr){
    				System.out.print(l+" ");
    			}
    			System.out.print(endline);
    
    			k= i;
    			for(int j =i;j<len;j++){
    				if(arr[j]<arr[k]){
    					k=j;			
    				}
    			}
    		    tmp= arr[i];
    			arr[i]=arr[k];
    			arr[k]=tmp;
    
    		}
    	}
    	
    	//冒泡排序
    	public void popSort(int[] arr){
    		
    		int len =arr.length;
    		int tmp;
    		
    		for(int i=0;i<len;i++){
    			
    			for(int l:arr){
    				System.out.print(l+" ");
    			}
    			System.out.print(endline);
    
    			for(int j=0;j<len-i-1;j++){
    				if(arr[j] > arr[j+1]){
    					tmp =arr[j];
    					arr[j] = arr[j+1];
    					arr[j+1] = tmp;
    				}	
    			}
    
    		}	
    	}
    	
    	//insertSort插入排序
    	public void insertSort(int[] arr){
    
    		int len = arr.length;
    		int tmp;
    		for(int i =1;i<len;i++){
    			for(int l:arr){
    				System.out.print(l+" ");
    			}
    			System.out.print(endline);
    			
    			for(int j =i;j>0;j--){
    				if(arr[j]<arr[j-1]){
    					tmp = arr[j-1];
    					arr[j-1] = arr[j];
    					arr[j] = tmp;					
    				}
    				else{
    					break;
    					}							
    			}
    		}	
    	}
    	
    	
    	//shellSort希尔排序
    	public void shellSort(int[] arr){
    
    		int len = arr.length;
    		int tmp;
    		int k;
    		
    		
    		for(int l:arr){
    			System.out.print(l+" ");
    		}
    		System.out.print(endline);
    		
    		for(int d =len/2;d >0; d /= 2 ){
    			for(int i =0;i<=d;i++){
    				for(int j=i+d;j<len;j +=d){
    					for(k = j;k>=d;k -=d){
    						if(arr[k]<arr[k-d]){
    							tmp = arr[k-d];
    							arr[k-d]=arr[k];
    							arr[k]=tmp;
    						}
    					}
    				}
    			}
    		
    			for(int l:arr){
    				System.out.print(l+" ");
    			}
    			System.out.print(endline);			
    		}
    	}
    
    }
    

      

  • 相关阅读:
    vue 2 渲染过程 & 函数调用栈
    vue keep-alive的实现原理和缓存策略
    记 vue 表单的一个性能问题
    IIS 部署到服务器上出现数据库连接失败
    JS apply和call
    js 检查对象是否没有字段
    c# httpclient
    js 使用flow
    IIS 出现405
    站点js屏蔽他人广告
  • 原文地址:https://www.cnblogs.com/timlong/p/3902722.html
Copyright © 2011-2022 走看看