zoukankan      html  css  js  c++  java
  • 快速排序

    #include <stdio.h>
    void quick_sort(int array[], int left, int right)
    {
    	int i = left, j = right;
    	int temp;
    	int pivot;
    
    	pivot = array[(left + right) / 2];
    
    	while (i <= j)
    	{
    		while (array[i] < pivot)
    		{
    			i++;
    		}
    		while (array[j] > pivot)
    		{
    			j--;
    		}
    		if (i <= j)
    		{
    			temp = array[i];
    			array[i] = array[j];
    			array[j] = temp;
    			i++;
    			j--;
    		}
    
    	}
    
    	if (left < j)
    	{
    		quick_sort(array, left, j);
    	}
    
    	if (i < right)
    	{
    		quick_sort(array, i, right);
    	}
    }
    
    int main(void)
    {
    	int array[] = {73, 108, 111, 118, 101, 70, 105, 115, 104, 67, 46, 99, 111, 109};
    	int i, length;
    
    	length = sizeof(array) / sizeof(array[0]);
    	quick_sort(array, 0, length-1);
    	for (i = 0; i < length; i++)
    	{
    		printf("%d ", array[i]);
    	}
    	putchar('
    ');
    
    	return 0;
    }
    
    //快速排序
    #include<iostream>
    using namespace std;
    void quickSort(int array[],int left,int right){
        int pivot=array[(left+right)/2];
        int i=left,j=right;
        while(array[i]<pivot){
            i++;
        }
        while(array[j]>pivot){
            j--;
        }
        
    if (i <= j)
            {
                int temp = array[i];
                array[i] = array[j];
                array[j] = temp;
                i++;
                j--;
            }
        if (left < j)
        {
            quickSort(array, left, j);
        }
    
        if (i < right)
        {
            quickSort(array, i, right);
        }
    
    }
    int main(void)
    {
        int array[] = {73, 108, 111, 118, 101, 70, 105, 115, 104, 67, 46, 99, 111, 109};
        int i, length;
    
        length = sizeof(array) / sizeof(array[0]);
        quickSort(array, 0, length-1);
        for (i = 0; i < length; i++)
        {
            printf("%d ", array[i]);
        }
        putchar('
    ');
    
        return 0;
    }
    View Code
  • 相关阅读:
    python学习(十七) 扩展python
    python学习(十六) 测试
    python学习(十五) 屏幕抓取
    python学习(十四) 网络编程
    python学习(十三) 数据库支持
    python学习(十二) 图形化用户界面
    python学习(十一) 文件和流
    python学习(十) 自带电池
    方法编写经验总结
    如何编写方法
  • 原文地址:https://www.cnblogs.com/helloworld2019/p/11160861.html
Copyright © 2011-2022 走看看