
目前版本的 MATLAB 的 sort 不是用 MATLAB 语言实现的,具体的算法可以看这篇文章介绍:
不过你这里写的快排能比内置的 sort 慢 200 倍,应该在实现方面也有改进的余地,但看不到你的代码也没法具体讨论
---------------------------
看到你更新了代码,测试了一下:
将前两行:
改为一行:
重新测试:
后面算法的具体过程也有一些改进余地,不过应该没有上述改动明显。
不过这种影响应该在 2015b 及之后的版本中才会体现。
对于老版本,由于手头没有,所以在
试了下
中的 qsort 代码,对比你的代码大概快 4 倍左右,当然这个代码在新版本也会比上边修改过前两行的代码要快一些
