`
shaojiashuai123456
  • 浏览: 262156 次
  • 性别: Icon_minigender_1
  • 来自: 吉林
社区版块
存档分类
最新评论

快速排序 -- c语言实现

 
阅读更多
#include <stdio.h>
#include <stdlib.h>

void qsort(int a[],int left_pos,int right_pos)
{
     if(left_pos<right_pos)
     {
         int left=left_pos,right=right_pos;
         int temp=a[left];       //获取标准 
         while(left<right)
         {
               while(left<right) 
               {
                   if(a[right]<temp)  //低于标准的往左放 
                   {
                        a[left]=a[right];
                        left++;
                        break;
                   }
                   right--;
               }
               while(left<right)
               {
                   if(a[left]>temp)  //高于标准的往右放 
                   {
                        a[right]=a[left];
                        right--;
                        break;
                   }
                   left++;
               }
         }
         a[left]=temp;               //标准放中间 
         qsort(a,left_pos,left-1);   //左快排 
         qsort(a,left+1,right_pos);  //右快排 
     }
}

int main()
{
    //测试用例 
    int a[]={331,34,43,64,75,43,7,4234,876,34};
    //快速排序 
    qsort(a,0,sizeof(a)/sizeof(int)-1);
    //打印结果 
    int i;
    for(i=0;i<sizeof(a)/sizeof(int);i++)
    {
        printf("%d  ",a[i]);
    }
    printf("\n");
	system("pause");
	return 1;
}

 

分享到:
评论

相关推荐

    C语言实现多种链表快速排序

    在给定的文件中,`快速排序.cpp`可能包含了具体的C语言实现代码,`qsort.h`可能是自定义的快速排序函数头文件,用于处理链表数据。`vcxproj`文件是Visual Studio项目文件,用于编译和管理源代码,而`.filters`和`....

    快速排序-基于c语言实现

    快速排序算法c语言

    C 语言算法集--超多C语言算法实现

    1. 排序算法:排序是数据处理的核心部分,如快速排序、归并排序、冒泡排序、插入排序、选择排序等。C语言中的这些排序算法各有优劣,适应不同的数据场景,熟练掌握能提高程序的运行效率。 2. 搜索算法:包括线性...

    快速排序4.c 使用C语言来实现的

    快速排序4.c 使用C语言来实现的快速排序4.c 使用C语言来实现的快速排序4.c 使用C语言来实现的快速排序4.c 使用C语言来实现的快速排序4.c 使用C语言来实现的快速排序4.c 使用C语言来实现的快速排序4.c 使用C语言来...

    选择排序、插入排序、冒泡排序以及快速排序和归并排序的C语言实现,绝对可用

    选择排序、插入排序、冒泡排序以及快速排序和归并排序的C语言实现,绝对可用

    二叉树建立遍历冒泡排序快速排序算法:C语言编程实现10个数据结构课程设计实例.zip

    二叉树建立遍历冒泡排序快速排序算法:C语言编程实现10个数据结构课程设计实例.zip 二叉树建立遍历冒泡排序快速排序算法:C语言编程实现10个数据结构课程设计实例.zip 二叉树建立遍历冒泡排序快速排序算法:C语言...

    快速排序.c 使用C语言实现的代码

    快速排序 快速排序.c 使用C语言实现的代码 快速排序.c 使用C语言实现的代码 快速排序.c 使用C语言实现的代码

    用C语言实现快速排序

    这是一个用C语言实现的快速排序的程序,它实现了对一个英文文本中的单词排序并将排序结果输出到另外一个文件中。

    排序算法-基于C语言实现的排序算法之QuickSort实现.zip

    下面我们将深入探讨快速排序的工作原理、C语言实现以及其在实际应用中的特点。 快速排序的基本思想是分治法(Divide and Conquer)。它通过选取一个基准值(pivot),将待排序数组分为两个子数组:小于基准值的元素...

    数据结构--用C语言描述 耿国华主编.zip

    例如,排序算法(如快速排序、归并排序)和搜索算法(如二分查找)都依赖于特定的数据结构。 在耿国华主编的这本书中,你可能会学到以下内容: 1. 基本数据结构的定义、特性及操作:如数组、链表、栈、队列的创建...

    各种排序方法的实现与比较源码--C语言

    本文将深入探讨C语言中常见的六种排序算法:起泡排序、直接插入排序、简单选择排序、快速排序、希尔排序以及堆排序。每种排序算法都有其独特的实现方式和性能特点,适合不同的场景。 1. **起泡排序(Bubble Sort)*...

    数据结构--用c语言描述

    在本章中,我们将探讨用C语言实现的数据结构,特别是几种不同的排序算法。 首先,排序是数据处理中常见且重要的任务,其目的是按照某种规则对一组数据进行排列。在第八章中,提到了稳定排序和不稳定排序两种分类: ...

    希尔排序与快速排序C语言实现

    快速排序的C语言实现主要包括: 1. 选择一个基准元素 pivot。 2. 分区操作:重新排列数组,使得所有小于pivot的元素都在其左边,所有大于pivot的元素在其右边。 3. 递归调用快速排序函数,对左右两部分分别进行排序...

    C语言开发----c语言学生成绩管理系统源码.rar

    这个管理系统源码是一个很好的学习资源,它可以帮助开发者理解如何用C语言实现数据管理和用户交互。 1. **C语言基础**: - **变量与数据类型**:C语言支持基本的数据类型如int, float, char等,用于存储不同类型的...

    C语言开发----c语言通讯录管理系统源码.rar

    C语言中的冒泡排序、选择排序或快速排序等算法可以应用于结构体数组。 7. **异常处理**:程序应包含适当的错误处理机制,如检查文件是否存在、是否成功打开,以及处理可能的输入错误。 8. **代码优化**:为了提高...

    C语言开发----c语言教工工资管理系统.rar

    这就涉及到快速排序、冒泡排序、选择排序等基本排序算法的应用。 9. **指针操作**:C语言中的指针是其强大之处,可以用来高效地操作数据和实现各种高级功能。在处理数据结构和函数调用时,熟练掌握指针的使用至关...

    数据结构习题与解析--- C语言篇

    8. **排序算法**:C语言中常见的排序算法有冒泡排序、选择排序、插入排序、快速排序、归并排序和堆排序。了解它们的时间复杂度和稳定性有助于优化程序性能。 9. **查找算法**:二分查找、顺序查找和二叉搜索树等都...

    C语言实现快速排序

    C语言数据结构实现快速排序代码,已经过调试可以直接使用。

    七大排序算法--c语言是实现

    交换排序:快速排序quicksort,冒泡排序bubblesort 选择排序:直接选择排序selectionsort,堆排序maxheapsort 插入排序:直接插入排序insertsort,希尔排序shellsort 合并排序:归并排序mergesort

    C语言开发----c语言商品销售系统源码.rar

    10. 排序算法:如果系统支持按某种标准(如价格、销量)对商品排序,那么可能应用到了冒泡排序、插入排序、快速排序等算法。 11. 数组操作:除了基础的数据存储,还可能涉及到数组的排序、查找等高级操作。 以上是...

Global site tag (gtag.js) - Google Analytics