首页 > 编程语言 > 详细

C++冒泡排序法

时间:2014-03-07 02:50:40      阅读:609      评论:0      收藏:0      [点我收藏+]

冒泡排序法可以形象地描述为:使较小的值像空气泡一样逐渐“上浮”到数组的顶部,而大的值逐渐“下沉”到数组的底部。这种排序技术要排好几轮,每一轮都要比较连续的数组素对。如果某对数值是按升序排列的,那就保持原样。如果按降序排列,就交换它们的值。

新学的C++,以前学VB时,也用到了冒泡排序,这次再次学冒泡排序时,相对于之前,简单了很多。下面分享一下我对这段代码的理解。

// 例4.3.1.cpp : 定义控制台应用程序的入口点。
//本程序从小到大排列10个随机整数


#include "stdafx.h"
#include<iostream>


int _tmain(int argc, _TCHAR* argv[])
{
	int vn[10];
	std::cout<<"原整数序列为:";//由用户输入10个随机整数
	for(int n=0;n<10;n++)
	{
		std::cin>>vn[n];//将随机数给数组赋值
	}
	for (int i=1;i<10;i++)//确定本循环要找第i个最大的数
	{
		int temp;
		for(int p=0;p<10-i;p++)
		{			
			if (vn[p]>vn[p+1])//如果数组中前一个数大于后一个数,则交换位置
			{
				temp=vn[p];
				vn[p]=vn[p+1];
				vn[p+1]=temp;
			}
			
		}
		for(int x=0;x<10;x++)std::cout<<vn[x]<<‘ ‘;//第i轮循环输出结果是将第i个大的数排列在倒数第i位。
		std::cout<<std::endl;
		
	}
	return 0;
}
bubuko.com,布布扣

冒泡排序充分运用两值交换的方法,不断将相邻两数进行比较,并按照排序要求交换位置,直至将最大的数交换到最后(升序)或将最小的数交换到最后(降序)。

bubuko.com,布布扣

C++冒泡排序法,布布扣,bubuko.com

C++冒泡排序法

原文:http://blog.csdn.net/tgbsqliuying/article/details/20628113

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!