快速排序与冒泡排序算法的设计与实现

本文介绍了两种经典的排序算法:快速排序和冒泡排序,并通过Java代码实现了这两种算法。快速排序采用分治策略,通过递归的方式进行排序;而冒泡排序则通过重复遍历待排序的数列,比较每对相邻元素并交换位置来达到排序的目的。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

大家可以先建个项目,运行一下下面的代码,看一下效果。

快速排序算法

package com.handofgod;

public class QuickSource {

	
   public static void quick_sort(int [] arr, int s, int length)  
    {  
        if (s < length)  
        {  
            //Swap(s[l], s[(l + r) / 2]); //将中间的这个数和第一个数交换 
            int i = s, j = length, x = arr[s];  
            while (i < j)  
            {  
                while(i < j && arr[j] >= x)
                { // 从右向左找第一个小于x的数  
                    j--;   
                }
                if(i < j)   
                	arr[i++] = arr[j];  
                  
                while(i < j && arr[i] < x)
                {// 从左向右找第一个大于等于x的数  
                    i++;
                }    
                if(i < j)   
                	arr[j--] = arr[i];  
            }  
            arr[i] = x;  
            quick_sort(arr, s, i - 1); // 递归调用   
            quick_sort(arr, i + 1, length);  
        } 
        
    }  
	
	public static void main(String[] args) {
		
		 int[] arr = {72, 6,57, 88,60, 42,83,73,48,85};
		/* for(int k = 0; k < s.length; k++){
		 System.out.println(s[k]);
		 }*/
		   quick_sort(arr, 0, arr.length-1);
		   for(int k = 0; k < arr.length; k++){
		   		 System.out.println(arr[k]);
		   		 }
	}

}

 

冒泡排序算法

public class BubbleSort{

public static void bubbleSort(int [ ] arr){
for(int i = 0; i < arr.length; i++){
     for(int j = 0; j < arr.length - 1 - i;  j++){
       if(arr[j]  > arr[j+1]){
         int temp = arr[j];
         arr[j] = arr[j+1];
         arr[j+1] = temp;
       }
   }
}

}

public static void main(String[ ] args){
int [ ] arr = {10,1,35,61,89,36,55 };
bubbleSort(arr);
for(int  i = 0; i < arr.length; i++){
System.out.print(arr[i]+" ");
   }
  }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值