快速排序的算法代码(简单排序代码)
admin
2023-01-23 20:18:00
0

1.一般来说,最快的排序算法是()A:归并排序B:快速排序C:插入排

B:快速排序 现在开始,我们要接触高效排序算法了.实践证明,快速排序是所有排序算法中最高效的一种.它采用了分治的思想:先保证列表的前半部分都小于后半部分,然后分别对前半部分和后半部分排序,这样整个列表就有序了.这是一种先进的思想,也是它高效的原因.各个算法时间复杂度比较: 平均时间复杂度 插入排序 O(n2) 冒泡排序 O(n2) 选择排序 O(n2) 快速排序 O(n log n) 堆排序 O(n log n) 归并排序 O(n log n) 基数排序 O(n) 希尔排序 O(n1.25)。

2.C语言快速排序的代码

首先我赞成你直接要代码的这种方法。

从你这个提问可以看出你对常用的排序算法都接触过,并且都没搞懂到底是怎么回事。

现在的电子平台资源都很丰富了,硬件平台的运行速度可以做到很高了,在大多数的情况下可以考虑用空间换时间的方法,也就是说你应该先搞懂算法的本质,然后再自己去实现它,开始的时候可以不考虑时间上的损耗。

排序的本质就是两个数比较大小,并根据其大小将其放到相应的位置。

记住其本质是什么,你自己绝对可以使用相应的语言实现它。

3.谁能给份快速排序的代码

public class QuickSort

{

public static void main(String[] args)

{

int []array={3,1,2};

quickSort(array,0,2);

for(int i:array)

System.out.println(i);

}

public static void quickSort(int[] arr, int l, int r) // 分划交换排序,快速排序

{

if (l >= r) // 递归出口

return;

int i, j, k;

int t;

k = arr[l];

i = l;

j = r + 1;

while (i {

do

{

i++;

}

while (ido

{

j--;

}

while (j>=0 && arr[j] >k);

if (i {

t = arr[i];

arr[i] = arr[j];

arr[j] = t;

}

}

t = arr[l]; // 最左边的关键词放到它最终的位置

arr[l] = arr[j];

arr[j] = t;

quickSort(arr, l, j - 1); // 递归排序左边和右边

quickSort(arr, j + 1, r);

}

}

4.求快速排序算法的代码

BOOL QuickSort(U16*p,int num)

{

int i;

int n_small=1,n_big=num-1;//升序

U16 m_key=p[0];

BOOL xiaokong=true;//小头有空

int m_free = 0;

if(num<=1)return true;///递归终止条件

for(i=0;i

{

if(xiaokong)//小头有空

{

if(p[n_big]

{

p[m_free]=p[n_big];

m_free=n_big;

xiaokong=false;

}

n_big--;

}

else//大头有空

{

if(p[n_small]>m_key)

{

p[m_free]=p[n_small];

m_free=n_small;

xiaokong=true;

}

n_small++;

}

}

if(m_free != 0)

{

p[m_free]=m_key;

}

//printf("num=%d[", num);

//for( i = 0; i< num; i++) printf("%d,", p[i]);

//printf("]key=%d, mid = %d, small=%d, big=%d, from %d num %d && from %d num %d\n",

// m_key, m_free, n_small, n_big, 0,m_free, m_free+1, num-(m_free+1) );

if(QuickSort(&p[0],m_free) && QuickSort(&p[m_free+1],num-(m_free+1) ) )

{

return true;

}

return false;

}

void QuickSortTest(void)

{

int i;

U16 sortTest[20] = {23,4,6,9,5,7,4,12,12,23,4,9999,89,1000,1000,4,2334,989,12,20};

U16 sortTest2[10] = {10,9,8,7,6,5,4,3,2,1};

U16 sortTest3[10] = {0,1,2,3,4,5,6,7,8,9};

for( i = 0; i<20; i++) printf("%d,",sortTest[i]); printf("\n");

QuickSort( sortTest, 20);

for( i = 0; i<20; i++) printf("%d,",sortTest[i]); printf("\n");

for( i = 0; i<10; i++) printf("%d,",sortTest2[i]); printf("\n");

QuickSort( sortTest2, 10);

for( i = 0; i<10; i++) printf("%d,",sortTest2[i]); printf("\n");

for( i = 0; i<10; i++) printf("%d,",sortTest3[i]); printf("\n");

QuickSort( sortTest3, 10);

for( i = 0; i<10; i++) printf("%d,",sortTest3[i]); printf("\n");

}


相关内容

热门资讯

《普及一下》手机红中麻将跑的快... 微【ab120590】 【mj120590】【hf420624】等风也等你。喜欢打麻将的兄弟姐妹们、...
(哪里寻找)一元一分红中跑得快... 微【ab120590】 【mj120590】【hf420624】等风也等你。喜欢打麻将的兄弟姐妹们、...
常识科普哪找1元1分-24小... 好运连连,全网推荐:(ab120590)(mj120590)【hf420624】-Q号:(QQ443...
数不胜数正规红中24小时一元麻... 一元一分麻将群加群主微:微【ab120590】 【mj120590】【hf420624】喜欢手机上打...
无押金1—2元红中麻将群202... 1.进群方式《ab120590》或者《mj120590》《hf420624》--QQ(4434063...
我来解读上下分24小时红中麻将... 群主微【ab120590】【hf420624】 【mj120590】亲友团上下分模式,24小时全天不...
我来教大家广东一元一分红中麻... 1.亮点:一元红中麻将微信“群”—ab120590—hf420624—mj120590—客服Q443...
腾讯新闻24小时一元一分正规麻... 薇新【ab120590】【mj120590】【hf420624】,最火热的跑得快,红中等等。自助上下...
哪里找上下分手机跑得快群@百度... 微【ab120590】 【mj120590】【hf420624】广东一元一分红中麻将推倒胡等麻将群,...
[观看]正规一块红中麻将@群(... 群主微信:【ab120590】 【mj120590】【hf420624】没有三缺一的无奈,手机上的麻...
寻找科普一元一分广东红中麻将群... 微【ab120590】 【mj120590】【hf420624】广东一元一分红中麻将推倒胡等麻将群,...
必看经典正规红中癞子麻将群@今... 微信一元麻将群群主微【ab120590】 【hf420624】【mj120590】一元一分群内结算,...
寻找科普无押金红中麻将群@2... 加V【ab120590】【hf420624】【mj120590】红中癞子、跑得快,等等,加不上微信就...
优酷视频上下分跑得快红中麻将... 群主微【ab120590】 【mj120590】【hf420624】免带押进群,群内跑包包赔支持验证...
看这里一元一分红中麻将群@24... 一元一分麻将群加群主微:微【ab120590】 【mj120590】【hf420624】喜欢手机上打...
寻找谁有24小时1分1-2块红... 认准管理加v:微【ab120590】【mj120590】【hf420624】七年稳定老群!随时拿起手...
攀上巅峰一元一分广东红中麻将群... 一元一分麻将群加群主微:微【ab120590】 【mj120590】【hf420624】喜欢手机上打...
休闲科普24小时免押一元一分红... 1.进群方式《ab120590》或者《mj120590》《hf420624》--QQ(4434063...
四通八达24小时一元一分红中麻... 加V【ab120590】【hf420624】【mj120590】红中癞子、跑得快,等等,加不上微信就...
[围观]正规红中麻将跑的快@群... 1.进群方式-[ab120590]或者《mj120590》【hf420624】--QQ(QQ4434...