冒泡法是经典排序算法, 顾名思义,就是把最小的数字像气泡一样往上冒,最终实现排序.
本程序为降序排序,也就是把最大值往上冒, MATLAB实现如下:
clc;close all;clear all;warning off;%清除变量
rand('seed', 100);
randn('seed', 100);
format long g;
disp('随机产生一个待排序数列');
timemat201=randi([3,20],10,1)
n2=size(timemat201,1);
tic;
state201=0;
while state201==0% 冒泡法
state201=1;
for i201=2:n2
t201=timemat201(i201-1,:);
t202=timemat201(i201,:);
if t201<t202
% 交换
timemat201(i201-1,:)=t202;
timemat201(i201,:)=t201;
state201=0;
end
end
end
toc
disp('排序后');
timemat201
程序结果: