#include <iostream> //简单排序
using namespace std; //先比较,再移动(交换)--排序的两个基本操作!!
void simple_sort(int b[],int n)
{
int flag=0,t;
for (int k=0;k<n-1;k++) //移动(交换)n-1次
{
flag=k; //!!每次移动后都要将标志位放入下一个起始位置(若flag刚好指向原位置则会发生不可预知的错误!!)
for (int i=k;i<n-1;i++) //比较n-1-k次,记录最大值下标
{
if (b[flag]>b[i+1])
{
flag=i+1;
}else{}
}
if (flag!=k)
{
t=b[flag];b[flag]=b[k];b[k]=t;
}
}
}
int main()
{
int a[10]={0,3,1,6,5,21,6,1,6};
simple_sort(a,10);
for (int i=0;i<10;i++)
{
cout << a[i] << " ";
}
return 0;
}
分享到:
相关推荐
冒泡排序 简单选择排序 c语言基础 排序算法 数组操作 排序算法实验 简单的c语言程序 排序算法输出
(1) 完成5种常用内部排序算法的演示,5种排序算法为:快速排序,直接插入排序,选择排序,堆排序,希尔排序; (2) 待排序元素为整数,排序序列存储在数据文件中,要求排序元素不少于30个; (3) 演示程序开始,...
实现以下常用的内部排序算法并进行性能比较:"直接插入排序"," 折半插入排序"," 2—路插入排序"," 表插入排序"," 希尔排序"," 起泡排序"," 快速排序"," 简单选择排序"," 树形选择排序"," 堆排序"," 归并排序"," 链式...
希尔排序,堆排序,快速排序,简单选择排序,插入排序,冒泡排序
冒泡排序,选择排序,插入排序,希尔排序,堆排序,归并排序,快速排序源码实现,里面有详细讲解,对新手应该有帮助
7大排序算法(快速排序,冒泡排序,选择排序,归并排序,插入排序,希尔排序,堆排序)实现源码
六种内部排序算法比较:直接插入排序、希尔排序、冒泡排序、快速排序、选择排序、堆排序。包含实验报告和源代码设计。
C语言所有排序大全,解决了您日常上课考试学习的需要,在这里每一个程序都没有错误,其中压缩包包括了归并排序;基数排序;...选择排序;折半排序;希尔排序这些日常排序,因为是全集所以大家踊跃下载
选择排序之简单选择排序.cpp
排序算法java版,速度排行:冒泡排序、简单选择排序、直接插入排序、折半插入排序、希尔排序、堆排序、归并排序、快速排序.mht
JAVA排序算法: 直接插入,希尔排序,选择排序,堆排序,冒泡排序,快速排序,归并排序,包括算法的详细介绍,以及对几种算法的详细测试
以单链表为存储结构实现简单选择排序的算法
24、简单选择排序 21、折半插入排序 22、冒泡排序 23、快速排序 24、简单选择排序 25、归并排序 26、堆排序 21、折半插入排序 22、冒泡排序 23、快速排序 24、简单选择排序 25、归并排序 21、折半插入排序 22、...
这是我的博客 《漫谈经典排序算法:一、从简单选择排序到堆排序的深度解析》中涉及到的源代码,详细解析请关注本人博客 http://blog.csdn.net/Touch_2011
常见的几种排序方式,包括选择排序,冒泡排序,快速排序,希尔排序,堆排序,插入排序。vs2008实现,对话框方式,主要实现字符串的由小到大排序。点击“几种排序方法.vcproj“运行。字符集使用多字节集,不能用...
冒泡排序、快速排序、简单插入排序、希尔排序、简单选择排序、堆叠排序六种数据结构必考的排序方式理解
10种排序算法代码+综合比较代码(直接插入排序、希尔排序、冒泡排序、快速排序、简单选择排序、堆排序、归并排序、基数排序、折半插入排序、2路插入排序),其中不仅有各种排序算法的代码,还包含10种代码在关键字...
简单选择排序
C# 常用经典算法,选择排序 冒泡排序 快速排序 插入排序 希尔排序
讲解了选择排序的基本原理,并用C++实现了简单选择排序,和堆排序算法,并进行了算法复杂度的分析。