排序算法-C++实现

#include <iostream>using namespace std;void show(int M[], int n)
{for(int i=0; i<n; i++)cout<<M[i]<<" ";cout<<endl;
}//快速排序
void quick_sort(int M[], int left, int right)
{if(left < right){int i,j,x;i = left;j = right;x = M[i];while(i<j){while(i<j && M[j]>= x)j--;if(i<j)M[i++] = M[j];while(i<j && M[i]<= x)i++;if(i<j)M[j--] = M[i];}M[i] = x;quick_sort(M, left, i-1);quick_sort(M, i+1, right);}}//插入排序
void insert_sort(int M[], int n)
{int i,j,tmp;for(i=0; i<n; i++){tmp = M[i];  //取一个新的数据tmpfor(j=i; j>0 && M[j-1]>tmp; j--)//将比数据tmp大的数据往后移动,直到找到比它的数据M[j] = M[j-1];      // j指向的始终是一个空位置M[j] = tmp;//将tmp放置在临界位置上}
}//冒泡排序
void bubble_sort(int M[], int n)
{int i,j,k;for(i=0; i<n; i++)  //每次冒泡后 数组最末端数据已经是最大数据,下次不需要重复排序for(j=0; j<n-i-1; j++){if(M[j]>M[j+1]){k = M[j+1];M[j+1] = M[j];M[j] = k;}}
}int main()
{//  输入数据格式: 第一行 n 表示n个数据
//  接下里 输入 n个数据,举例如下:
//  5
//  1 3 5 2 4freopen ("input.txt", "r", stdin);  //可以从文件中读取数据输入,//如果手动输入,注释该行int n;cin>>n;int M[n];for(int i =0; i<n; i++)cin>>M[i];show(M, n);quick_sort(M, 0, n-1);
//  insert_sort(M, n);
//  bubble_sort(M, n);show(M, n);return 0;
}

转载于:https://www.cnblogs.com/yeran/p/10959797.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/277590.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Bootstrap开发框架视频整理

最近到客户处进行实地培训&#xff0c;整理了很多培训的材料&#xff0c;现将它们录制相关主题的视频&#xff0c;作为我的Bootstrap开发框架的知识补充&#xff0c;希望给感兴趣的朋友进行了解。培训内容主要包括基础框架部分、MVC框架部分、Bootstrap框架部分、Bootstrap重要…

安卓随机通话记录_Android 通话记录

查询通话记录private static final String[] CALLLOGS_PROJECTION new String[]{CallLog.Calls._ID,CallLog.Calls.CACHED_NAME, CallLog.Calls.NUMBER, CallLog.Calls.TYPE, CallLog.Calls.DATE,CallLog.Calls.DURATION};/*** * 概述&#xff1a;获取最近10条通话记录 */publ…

【c基础】入门语法

%d:占位符 表示要输出一个整形数。 %f:为float 浮点数 %lf:为double型 双精度浮点数 \n:换行 const:定义一个常量,一旦被初始化就不能修改&#xff0c;只读的变量&#xff08;read-only variable&#xff09;。 整数运算 的结果是整数 如果有小数就抛弃没有考虑四舍五入。 一&a…

vue的移动app项目中,自定义拖拽指令的问题

使用vue的都知道vue有一个自定义指令&#xff0c;我比较喜欢的就是拖拽的自定义指令&#xff0c;感觉挺方便的&#xff01; //组件内的拖拽指令 directives: {//组建内自定义指令drag: {// 指令的定义bind: function(el, value) {let oDiv el; //当前元素let self this; //上…

弹窗php整人_[整人小程序] 超级信息框(无限弹窗++)

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼貌似刚才缩进空格被吞了&#xff0c;再发一次Set FSO  createobject("scripting.filesystemobject")Set ws  Createobject("Wscript.shell")Set SA  CreateObject("Shell.Application")If …

day22 Java学习 IO流(序列流)

IO流&#xff08;序列流&#xff09; 序列流&#xff1a; * 可以把多个字节输入流整合成一个&#xff0c;从序列流中读取数据时&#xff0c;将从被整合的第一个流开始读&#xff0c;读完一个之后继续读第二个。 整合方式&#xff1a; * Seq uenceInputStream ( InputStream &am…

网站建设-简单动态网站搭建

通过前面Clouder课程的学习&#xff0c;或许你已经掌握了在云服务器上发布和部署静态网页的方法&#xff0c;那么如何搭建一个可以随时更新内容的动态网站&#xff1f;通过本课程的学习&#xff0c;你将掌握如何在云端搭建全世界使用最多的WordPress网站的方法&#xff0c;并学…

mysql的concat函数_MySQL中concat函数(连接字符串)

MySQL中concat函数使用方法&#xff1a;CONCAT(str1,str2,…)返回结果为连接参数产生的字符串。如有任何一个参数为NULL &#xff0c;则返回值为 NULL。注意&#xff1a;如果所有参数均为非二进制字符串&#xff0c;则结果为非二进制字符串。如果自变量中含有任一二进制字符串&…

利用airTest的图像实别技术测试Web应用

airTest的第三方类库中有图像实别功能&#xff0c;根据官网的介绍&#xff0c;这个功能是能够在Windows上用来定位元素&#xff0c;进行操作的。尝试过以下脚本&#xff0c;发现真的可以。 from selenium.webdriver.chrome.options import Options from selenium import webdri…

MySQL主从复制故障解决

丛库复制停止&#xff0c;进丛库查看&#xff0c;报错1007&#xff0c;数据库已存在&#xff0c;不能创建数据库 mysql> show slave status\G; Slave_IO_Running: Yes Slave_SQL_Running: No Last_Errno: 1007 Last_Error: Error Cant create database test; database exis…

Unraveling the JPEG file

(文章还剩实践部分没写&#xff0c;答辩过后补上...) JPEG文件在当下数字化生活中是无处不在的&#xff0c;但是在熟悉的JPEG面纱背后&#xff0c;隐藏着一些算法&#xff0c;它们去除了人类眼中无法察觉到的细节。这产生了最高的视觉质量与最小的文件大小。让我们来看看这一算…

mysql interval 3 day_Mysql之INTERVAL与DATE_SUB与EXTRACT函数的使用

1. INTERVALINTERVAL代表的是时间间隔MySQL中的时间间隔类型有如下几种:1.1 利用INTERVAL做时间的加减法示例&#xff1a;加法:SQL>SELECT DATE 2018-11-01 INTERVAL 10 11 DAY_HOUR;结果:2018-11-11 11:00:00减法&#xff1a;SQL> select date 2018-11-11 11:00:00 -INT…

(二十四)面向对象

class Car {int num;String name;String color;public static void run() {System.out.println("行驶中");} } //再类中定义的变量&#xff1a;成员变量 //在类中定义的函数&#xff1a;成员函数 class Demo1 {public static void main(String[] args) {//创建一个ca…

mysql 三主_MySQL主主复制3

一、创建并授权用户在每一台(主)服务器上创建一个用户&#xff0c;并为之授权&#xff0c;使它们可以互相访问彼此的数据库在Server-1上&#xff1a;创建一个充许Server-2来访问的用户server2,密码为&#xff1a;server2mysql> GRANT REPLICATION SLAVE ON *.*> TO ‘ser…

0727日志

为什么80%的码农都做不了架构师&#xff1f;>>> c端线上地址 http://x.diandanme.com/fe/?d183#/ 什么时候来需求&#xff0c;我做好准备了吗&#xff1f; eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC94LmRpYW5kYW5tZS5jb21cL2FwaVwvd2VjaGF0XC…

Python基础学习总结__Day3

一、集合 1&#xff0e;特性&#xff1a;无序且天生去重&#xff0c;格式为{} 2&#xff0e;作用&#xff1a; &#xff08;1&#xff09;去重 &#xff08;2&#xff09;关系测试 3&#xff0e;可调用函数&#xff08;常见对列表操作&#xff09; &#xff08;1&#xff09;取…

day8网络编程,面向对象1

一.只是回顾 1.导入模块的顺序,首先从当前目录下找,再从环境变量里面找,使用"sys.path.insert(0,需要导入的环境变量)"加入需要导入文件的环境变量; 2.如果不同项目中有相同的文件,需要导入文件,需要将非当前项目中右键添加的环境变量取消,将当前的环境变量添加上去;…

mysql练手数据_MySQL新手练习

操作插入数据 的语法 :INSERT INTO 表名称 VALUES(值1&#xff0c;值2&#xff0c;......);修改数据 的语法&#xff1a;UPDATE 表名称 SET 字段名1 值1, 字段名2值2,...... 【WHERE 条件】;删除数据 的语法&#xff1a;delete from 表名 【[where 条件】;delete 表1&#xff…

spring security config

spring secuirty 相关的配置解析 permitAll()与web.ignoring() ingore是完全绕过了spring security的所有filter&#xff0c;相当于不走spring securitypermitall没有绕过spring security&#xff0c;其中包含了登录的以及匿名的。转载于:https://www.cnblogs.com/MND1024/p/10…

TSPITR方式数据库找回误操作丢失的数据

一、TSPITR介绍 TSPITR全称是Tablespace Point In Time Recover&#xff08;表空间基于时间点的不完全恢复&#xff09;。原理是通过辅助实例基于时间还原出误操作前的数据通过DataPump将数据导入到目标数据库。TSPITR的最大好处是不需要生产库停机。 二、适用场景 表空间时点恢…