冒泡排序,选择排序,插入排序
2010-11-03 17:58
246 查看
#include <iostream.h>
void main()
{
int arr[5] = {7,1,5,4,8};
//--------------------------------------------------------------------------
//bubble sort
/*
for(int i=0; i<4; i++)
{
for(int j=i+1; j<5; j++)
{
if(arr[i] > arr[j])
{
int k=arr[i];
arr[i] = arr[j];
arr[j] = k;
}
}
}
*/
//--------------------------------------------------------------------------
//select sort
/*for(int i=0; i<4; i++)
{
int k = arr[i];
int id = i;
for(int j=i+1; j<5; j++)
{
if(k > arr[j])
{
k = arr[j];
id = j;
}
}
if(k != arr[i])
{
arr[id] = arr[i];
arr[i] = k;
}
}
*/
//--------------------------------------------------------------------------
//insert sort
for(int i=1; i<5; i++)
{
int inserter = arr[i]; //插入元素
int index = i-1;
while(index>=0 && inserter<arr[index])
{
arr[index+1] = arr[index];
index --;
}
arr[index+1] = inserter;
}
//--------------------------------------------------------------------------
//output result
for(int i=0; i<5; i++)
{
cout << arr[i];
}
cout << endl;
}
void main()
{
int arr[5] = {7,1,5,4,8};
//--------------------------------------------------------------------------
//bubble sort
/*
for(int i=0; i<4; i++)
{
for(int j=i+1; j<5; j++)
{
if(arr[i] > arr[j])
{
int k=arr[i];
arr[i] = arr[j];
arr[j] = k;
}
}
}
*/
//--------------------------------------------------------------------------
//select sort
/*for(int i=0; i<4; i++)
{
int k = arr[i];
int id = i;
for(int j=i+1; j<5; j++)
{
if(k > arr[j])
{
k = arr[j];
id = j;
}
}
if(k != arr[i])
{
arr[id] = arr[i];
arr[i] = k;
}
}
*/
//--------------------------------------------------------------------------
//insert sort
for(int i=1; i<5; i++)
{
int inserter = arr[i]; //插入元素
int index = i-1;
while(index>=0 && inserter<arr[index])
{
arr[index+1] = arr[index];
index --;
}
arr[index+1] = inserter;
}
//--------------------------------------------------------------------------
//output result
for(int i=0; i<5; i++)
{
cout << arr[i];
}
cout << endl;
}
相关文章推荐
- 面试题:冒泡排序,选择排序,插入排序,快速排序,归并排序,堆排序
- C#的四种排序算法:冒泡排序、选择排序、插入排序和希尔排序
- JAVA面试题之冒泡排序,插入排序及选择排序
- 指针初步学习,运用指针进行冒泡排序,选择排序,插入排序和折半查找
- 冒泡排序、选择排序、插入排序、快速排序算法耗时测试
- 冒泡排序、选择排序、插入排序以及二分法查找算法
- 简单的排序算法——插入排序,选择排序,交换排序(冒泡排序,快速排序)
- 冒泡排序,选择排序,插入排序
- (九)数据结构之简单排序算法实现:冒泡排序、插入排序和选择排序
- 数组排序-冒泡排序-选择排序-插入排序-希尔排序-快速排序-Java实现
- 排序算法:冒泡排序、插入排序、选择排序、快速排序对比
- 数据结构与算法——三种基础排序算法C#实现(冒泡排序、选择排序、插入排序)
- 七内部排序算法汇总(插入排序、Shell排序、冒泡排序、请选择类别、、高速分拣合并排序、堆排序)
- 三种数组排序算法(冒泡排序、选择排序、插入排序、二分查找法)
- 插入排序、选择排序、冒泡排序、快速排序、堆排序
- C#算法 选择排序、冒泡排序、插入排序
- [Java]数组排序-选择排序 冒泡排序 插入排序
- c语言实现选择排序、冒泡排序、插入排序
- 简单排序算法之插入排序、选择排序和冒泡排序
- 冒泡排序、选择排序、插入排序