排序的选择
Posted 五菱宏光车神
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了排序的选择相关的知识,希望对你有一定的参考价值。
快速排序
快速排序其实是在冒泡排序的基础上做出的一个改进.
最近开始学习视频了
快排的基础要义
1.确立分界点
2.调整
3.递归处理两边
典型的例题
785. 快速排序
#include <iostream>
#include <bits/stdc++.h>
using namespace std;
int n;
void quick_sort(int a[],int l,int r)
if (l >= r) return;
int i = l - 1, j = r + 1, x = a[l + r >> 1];
while (i < j)
do i ++ ; while (a[i] < x);
do j -- ; while (a[j] > x);
if (i < j) swap(a[i], a[j]);
quick_sort(a, l, j);
quick_sort(a, j+1, r);
int main()
cin>>n;
int a[n];
for(int i=0; i<n ;i++)
cin>>a[i];
quick_sort(a,0,n-1);
for(int i=0; i<n ;i++)
cout<<a[i]<<" ";
return 0;
本周的每日一题都比较简单
知识点:
1.revers(a,b);
颠倒
2.swap(a,b)
交换
3.next_permutation(q,q+n);
整体的排列改变。
4.穷举法的使用
1353. 滑雪场设计
就是吧所有可能的都算一遍;
以上是关于排序的选择的主要内容,如果未能解决你的问题,请参考以下文章