matlab中冒泡排序法,要求对输入的数组元素进行排序

matlab中冒泡排序法,要求对输入的数组元素进行排序

先建一个函数脚本:bubble.m

function [ x ] = bubble( x )

if ~isvector(x)
    error('bubble: `x` must be a vector.')
end

n = length(x);
for j = 1:n
    for i = 1:n-j
        if x(i) > x(i+1)
            t = x(i);
            x(i) = x(i+1);
            x(i+1) = t;
        end
    end
end

end

然后就可以调用了,比如:

x = randperm(10)
x = bubble(x)

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-12-09
按从大到小排列
a= ;
for i=1:length(a)-1
for j=i+1:length(a)
if(a(i)<a(j))
t=a(i);
a(i)=a(j);
a(j)=t;
end
end
end本回答被网友采纳
相似回答