快速排序 C语言

原创 2018年04月15日 10:50:13
//归并算法
void swap(int *a, int *b)
{
	int temp;
	temp = *a;
	*a = *b;
	*b = temp;
}
void sort(int b[], int s,int e)
{
	if (s >= e)
		return;
	int k = b[s];
	int i = s;
	int j = e;
	while (i != j)
	{
		while (i < j && b[j] >= k)
			--j;
		swap(&b[i], &b[j]);
		while (i < j && b[i] <= k)
			++i;
		swap(&b[i], &b[j]);
	}
	sort(b,s,i-1);
	sort(b,i+1,e);
}




int main()
{



	/*快速排序 分治 归并算法*/
	int b[9] = { 7, 9, 9, 4, 3, 1, 2, 9, 8 };
    sort(b, 0, 8);
	for (int i = 0; i < 9; ++i)
	{
		printf("%d", b[i]);
         }
}

版权声明: https://blog.csdn.net/qq_41750725/article/details/79947340

C语言系列之 快速排序与全排列算法

-
  • 1970年01月01日 08:00

快速排序--C语言

 快速排序是对冒泡排序的一种改进。它的基本思想是:通过一躺排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一不部分的所有数据都要小,然后再按次方法对这两部分数据分别进行快速排序,整个...
  • yifan268
  • yifan268
  • 2007-03-14 23:42:00
  • 12857

快速排序-c语言实现10.1.1

快速排序由于排序效率在同为O(N*logN)的几种排序方法中效率较高,因此经常被采用,再加上快速排序思想----分治法也确实实用,因此很多软件公司的笔试面试,包括像腾讯,微软等知名IT公司都喜欢考这个...
  • qq_26046771
  • qq_26046771
  • 2017-05-06 07:01:38
  • 725

单链表及快速排序c语言实现

/* ============================================================================ Name : 单链...
  • aircherfjt
  • aircherfjt
  • 2014-02-12 14:31:06
  • 1106

快速排序的C语言源代码与分析

快速排序的基本思想是: 通过一躺排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按次方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此...
  • guoyong10721073
  • guoyong10721073
  • 2012-09-27 15:35:40
  • 31127

快速排序(C语言版)

#include #include int findPivotIndex(int array[], int low, int high) { int pivot = array[low]; ...
  • Thinkpad4180NC5
  • Thinkpad4180NC5
  • 2014-09-30 16:42:46
  • 2350

C语言:快速排序

排序思想1.快排是对冒泡排序的一种改进,在快速排序中,元素的比较和移动是从两端向中间进行的,关键码较大的元素一次就能从前面移动到后面,关键码较小的元素一次就能从后面移动到前面,元素移动距离的较远,从而...
  • cmustard
  • cmustard
  • 2016-10-05 20:29:07
  • 3114

快速排序的c语言实现代码

快速排序的基本思想就是选择一个基准元素,通常选择第一个元素或者最后一个元素,通过一趟扫描,将待排序列分成两部分,一部分比基准元素小,一部分大于等于基准元素,此时基准元素在其排好序后的正确位置,然后再用...
  • xulu_258
  • xulu_258
  • 2016-05-04 23:12:25
  • 2786

用C语言实现快速排序算法

一、快速排序算法(Quicksort) 1. 定义 快速排序由C. A. R. Hoare在1962年提出。快速排序是对冒泡排序的一种改进,采用了一种分治的策略。 2. 基本思想 通过一趟排序将...
  • zhengqijun_
  • zhengqijun_
  • 2016-11-04 22:33:13
  • 38401

快速排序C语言实现(递归)和希尔排序

快速排序:#include "stdio.h" void swap(int *a,int *b) { /*序列中元素位置的交换*/ int ...
  • qq_21792169
  • qq_21792169
  • 2016-10-07 20:09:56
  • 2263
收藏助手
不良信息举报
您举报文章:快速排序 C语言
举报原因:
原因补充:

(最多只允许输入30个字)