2(3).选择排序_快排(线性表)
2019独角兽企业重金招聘Python工程师标准>>>
#define maxn 100000
#include<cstdio>
#include<cstring>
typedef struct pan
{
int data[maxn];
int Len;
} Panda;
void Input(Panda *L,int N)
{
int fro=L->Len,len=L->Len+N;
for(int i=fro; i<len; i++)
{
scanf("%d",&L->data[i]);
L->Len++;
}
return ;
}
void QuickSort(Panda *L,int i,int j)
{
if(i>=j) return ;
int pl=i,pr=j;
int cub=L->data[i];
while(i<j)
{
while(i<j&&L->data[j]>=cub) j--;
L->data[i]=L->data[j];
while(i<j&&L->data[i]<=cub) i++;
L->data[j]=L->data[i];
}
L->data[i]=cub;
QuickSort(L,pl,i-1);
QuickSort(L,i+1,pr);
return ;
}
void Output(Panda *L)
{
for(int i=0; i<L->Len; i++)
printf("%d\n",L->data[i]);
return ;
}
int main()
{
Panda *L=new Panda;
L->Len=0;
int N=10;
Input(L,N);
QuickSort(L,0,N-1);
Output(L);
return 0;
}
/**************************************************************
Language: C++
Result: Accepted
Time:0 ms
Memory:1420 kb
****************************************************************/
转载于:https://my.oschina.net/pandacub/blog/142176
2(3).选择排序_快排(线性表)相关推荐
- 02_Python算法+数据结构笔记-冒泡排序-选择排序-插入排序-快排-二叉树
b站视频:路飞IT学城 清华计算机博士带你学习Python算法+数据结构_哔哩哔哩_bilibili 文章目录 #11 排序介绍 #12 冒泡排序介绍 #13 冒泡排序 #14 选择排序 #15 插入 ...
- 编程算法总结(冒泡排序,选择排序,快排)
项目需要,自己上学的时候接触过一些算法,我记得当时算法那门考了系里最高分,98分,想着没什么用呢,谁知道这两天就用到了,项目中涉及到了排序,我就重温了一下算法,说到算法,就我个人而言,第一就是想到了冒 ...
- C++数据结构和算法2 栈 双端/队列 冒泡选择插入归并快排 二三分查找 二叉树 二叉搜索树 贪婪 分治 动态规划
C++数据结构和算法2 栈 双端/队列 冒泡选择插入归并快排 二三分查找 二叉树 二叉搜索树 贪婪 分治 动态规划 博文末尾支持二维码赞赏哦 _ github 章3 Stack栈 和 队列Queue= ...
- 排序算法 | 快排、冒泡、堆排、归并、基数、递归、希尔、计数
文章目录 写在前面 排序 1. 基数排序`稳定` 2. 归并排序`稳定`merge sort 3. 快速排序`不稳定`quick sort 4. 堆排序`不稳定`heap sort 大根堆 小根堆 5 ...
- 排序(下)---快排、归并
排序(下)-快排.归并 快速排序 采用分治的思想:每次选区一个数作为基准,让整个数据中凡是大于此数的放在此数的右边,小于此数的放在此数的左边,然后进行对此数的两边进行选基准,如上方式的分法,递归下去, ...
- 排序算法--快排的优化
排序算法–快排的优化 下面是我写的一种快排: #include <iostream> #include <stdlib.h>using namespace std;void P ...
- 主要的七种排序(快排、希尔排序、堆排序、归并排序、选择排序、插入排序、冒泡排序)
一.冒泡排序 冒泡排序是最简单的排序,不需要额外空间,时间复杂度为O(N^2):代码如下 import java.util.Arrays;public class BubbleSort {public ...
- 排序 之 快排、归并、插入 - 时间复杂度----掌握思想和过程
俗话说:天下武功无坚不破,唯快不破.对于算法当然也是要使用时间最短.占用空间最小的算法来实现了. 注意:我代码里面打的备注仅供参考,建议不要背模板(因为没有固定的模板),可以写一个数列按着代码跑两圈或 ...
- Java冒泡,快速,插入,选择排序^_^+二分算法查找
这段时间在学Java,期间学到了一些排序和查找方法.特此写来和大家交流,也方便自己的日后查看与复习. 1.下边是Java的主类: public class Get {public static voi ...
最新文章
- 每天一个linux命令(2):文件权限详解
- 模拟电子技术_清华大学华成英教授主讲之符号说明
- 160个Crackme018
- 函数的返回值-改造求和函数
- ubuntu15.10英文系统中文输入法配置 fcitx
- java必读书籍_必读:Java Java
- 长春大学计算机学院招生简章,长春大学招生简章
- 【转】struct epoll_event
- VMware Linux 共享文件夹 虚拟机无共享文件解决方法
- 编译cloog for gcc 4.8.5 问题
- 英文单词和数字断行不折叠
- 非阻塞connect用法
- 【Windows Server 2019】DHCP服务器配置与管理——验证DHCP服务 备份与恢复DHCP数据 Ⅲ
- 操作系统中的信号量及P、V操作
- 计算机的服务桌面,比较实用的电脑桌面软件值得入手,个个精选
- PacketTracer使用及网络测试命令
- 同程艺龙半年报的喜色,掩盖了旅游竞争的本色
- 计算机知识的黑板报图片大全,学习黑板报精选图片欣赏
- ceph v15.2.13版本[octopus]分布式集群部署
- 深入分析IBM的云计算解决方案