排序算法 C++代码实现
插入排序:
就像摸牌,摸一张插进去,找一个哨兵。从第二个開始,和前一个比較。小的话前移一位。
#include <iostream>
#include<stdlib.h>using namespace std;
#define N 4 //不能加分号结束class sort
{
public:void insertSort(int a[],int n);sort(){cout<<"Start"<<endl;}sort(const sort&s);
private:};
void sort::insertSort(int a[],int n)
{int i=1,j=0,key;//设两个变量值的目的是内外变化。假设仅仅有一个内外的变化会产生影响while(i<n) //外循环{key=a[i];//把第几个拿出来。和前边的对照;j=i-1; //前边的那个值while(key<a[j]&&j>=0) //内循环{a[j+1]=a[j]; //把当前值改成前一个值j--; //位置前移一位}a[j+1]=key; //比較成功之后。把哨兵插到当前位置,注意用的是ji++; //转到下次循环}cout<<"-----------\n ";for(int i=0;i<n;i++){cout<<a[i];}
}
sort::sort(const sort&s)
{cout<<"news\n";
}
int main()
{sort s;//sort b=s;int a[N];cout<<"lease input arr.";for(int i=0;i<N;i++){cin>>a[i];}cout<<"shuchu wei";for(int i=0;i<N;i++){cout<<a[i]<<endl;}s.insertSort(a,N);return 0;
};
</pre><p><span style="font-family:SimHei; font-size:24px">冒泡排序:</span></p><p><span style="font-family:SimHei"></span></p><pre name="code" class="html"><span style="font-size:14px;">#include <iostream>
#include<stdlib.h>using namespace std;
#define N 4 //不能加分号结束class sort
{
public:void insertSort(int a[],int n);sort(){cout<<"Start"<<endl;}sort(const sort&s);void bubblesort(int a[],int n);
private:int c;
};
void sort::insertSort(int a[],int n)
{int i=1,j=0,key;//设两个变量值的目的是内外变化,假设仅仅有一个内外的变化会产生影响while(i<n) //外循环{key=a[i];//把第几个拿出来。和前边的对照。j=i-1; //前边的那个值while(key<a[j]&&j>=0) //内循环{a[j+1]=a[j]; //把当前值改成前一个值j--; //位置前移一位}a[j+1]=key; //比較成功之后,把哨兵插到当前位置,注意用的是ji++; //转到下次循环}cout<<"-----insertsort------\n ";for(int i=0;i<n;i++){cout<<a[i];}cout<<endl;
}
void sort::bubblesort(int a[],int n)
{int i=0,j=n;for(;i<n-1;i++)//外层循环{for(;j>i;j--)//内层循环,从最后一个開始向上冒泡。冒泡次数逐渐减一{if(a[j]<a[j-1])//倒数開始,两个数进行比較,下边是交换过程{int temp=a[j-1];a[j-1]=a[j];a[j]=temp;}}}cout<<"-----bubblesort------\n ";for(int i=0;i<n;i++){cout<<a[i];}cout<<endl;
}
sort::sort(const sort&s)
{cout<<"news\n";
}
int main()
{sort s;//sort b=s;int a[N];cout<<"lease input arr.";for(int i=0;i<N;i++){cin>>a[i];}cout<<"shuchu wei";for(int i=0;i<N;i++){cout<<a[i];}cout<<endl;s.insertSort(a,N);s.bubblesort(a,N);return 0;
};</span><span style="font-size:24px;">
</span>
其它算法待续....
转载于:https://www.cnblogs.com/yutingliuyl/p/7267526.html
排序算法 C++代码实现相关推荐
- c语言选择排序法程序设计,C语言基础之选择排序算法和代码
在利用C语言进行编写程序的过程中,我们会常常通过算法及其代码来进行相关程序的编写工作.今天课课家笔者先给大家介绍C语言算法中的选择排序算法以及代码.那么到底什么是选择排序算法呢?下面由笔者慢慢道来. ...
- Java几种常见排序算法与代码实现
前言: 排序算法也算是每年校招.春招.社招都会问到的问题,虽然每次复习了就忘,但是也可以隔一段时间又拿出来看看. 其中,排序方式指,内部还是外部排序.只需要内部内存就可以的称为内部排序,数据量太大需要 ...
- 冒泡排序c++代码_八大排序算法(解释+代码+结果+算法优化)
>>>欢迎点赞,收藏,转发! 评论区获取源代码与更多更全干货!<<< 排序算法可以分为内部排序和外部排序,内部排序是数据记录在内存中进行排序,不需要访问外存便能完成 ...
- Java常用的八种排序算法与代码实现
在Java的时候,对于排序的应用需要熟练的掌握,这样才能够确保Java学习时候能够有扎实的基础能力.那Java有哪些排序算法呢?本文小千就来详细说说Java经典的8种排序算法. 经典的排序算法有八种, ...
- 程序员面试必备:动图演示十大经典排序算法及代码实现
0.算法概述 0.1 算法分类 十种常见排序算法可以分为两大类: 比较类排序:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn),因此也称为非线性时间比较类排序. 非比较类排序: ...
- 数据结构与算法(三) 排序算法(代码示例)
数据结构与算法三 排序算法 1. 选择排序 2. 插入排序 3. 冒泡排序 4. 归并排序 5. 快速排序 6. 希尔排序 7. 堆排序 总结 1. 选择排序 选择排序的基本原理: 对于未排序的一组记 ...
- 超级无敌各种排序算法 一个代码解决<可以做后序模板>
本次排序算法有: 一.冒泡排序 时间复杂度(O(n²)) 二.选择排序 时间复杂度(O(n²)) 三.插入排序 时间复杂度(O(n²)) 四.希尔排序 时间复杂度(O(n²)) 五.快速排序 时间复杂 ...
- C言语选择排序算法及代码
选择排序是排序算法的一种,这里以从小到大排序为例停止解说. 根本思惟及举例阐明 选择排序(从小到大)的根本思惟是,起首,选出最小的数,放在第一个地位:然后,选出第二小的数,放在第二个地位:以此类推,直 ...
- java排序算法代码_Java实现八种排序算法(代码详细解释)
package八大排序算法;importjava.util.Arrays;importorg.junit.Test;/*** 1.插入排序 直接插入排序.希尔排序 折半插入排序 * 2.交换排序 冒泡 ...
- PHP 四种基本排序算法的代码实现(2)
2019独角兽企业重金招聘Python工程师标准>>> 许多人都说算法是程序的核心,算法的好坏决定了程序的质量.作为一个初级phper,虽然很少接触到算法方面的东西.但是对于基本的排 ...
最新文章
- Caused by: org.xml.sax.SAXParseException: 不允许有匹配 [xX][mM][lL] 的处理指令目标。
- 2019年末,10 位院士对 AI 的深度把脉(上)
- java怎么让进程停止_JAVA:如何在进程停止时调用一个方法(甚至有可能吗?)
- Java对象序列化的本机C / C ++类似性能
- 一个关于python装饰器参数的问题
- 将字符转换成数字(atoi),将数字转换成字符(itoa)
- 图论算法 —— 图论概述
- 【docker】安装教程
- js实现视频时间段拖拽编辑
- pd 生成mysql数据库sql时加上备注
- 涂抹oracle教你,《涂抹Oracle-三思笔记之一步一步学Oracle》出炉手记
- 【真正离线安装】Adobe Flash Player 32.0 插件离线安装包下载(无需联网安装)
- kettle读txt文件并处理
- navicat导数据速度_快速解决mysql导数据时,格式不对、导入慢、丢数据的问题
- git合并其他分支的代码产生冲突处理过程
- 腾讯微博qq说说备份导出工具_软件推荐Day51 其他工具类 腾讯微博备份
- Hadoop之block副本放置策略 Rack机架感知源码
- 动画设计基础(三点一节)-3d max2014 裙摆(飘带插件)
- 【AIS学习】01 AIS系统的介绍
- android 服务端技术,移动应用服务器端开发(基于JSP技术)-2017 Android系统构架 Android系统构架.docx...