1. 程式人生 > >Matlab帶比較方法的快排

Matlab帶比較方法的快排

一個 big tla 需要 只需要 code str pan color

首先是主方法QUCIKSORT:(從小到大排列)

function [A]=QUICKSORT(A,Low,high,mdat)
set(0,RecursionLimit,1000)
if Low<high
    [A,w]=SPLITION2(A,Low,high,mdat);
    A=QUICKSORT(A,Low,w-1,mdat);
    A=QUICKSORT(A,w+1,high,mdat);
end

function [A,w]=SPLITION2(A,Low,high,mdat)
i=Low;
x=A(1,Low);
for j=Low+1:high
    %if A(
1,j)<=x if cmpbig(A(1,j),x) == 1 i=i+1; if i~=j; k=A(1,i); A(1,i)=A(1,j); A(1,j)=k; clear k; end end end k=A(1,i); A(1,i)=A(1,Low); A(1,Low)=k; clear k; w=i;

而後,只需要再寫一個cmpbig方法來完成兩個量之間的比較大小功能即可。

Matlab帶比較方法的快排