Erlang算法一章:快速排序

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qqqrtretretee/article/details/84616919

Erlang算法一章:快速排序

快速排序算法

快速排序的核心思想是分而治之,①把数组列表根据某一取值分成两段,左边都比中间值小,右边都比中间大,再对左右两边执行①操作即可。
用Erlang语言描述比较简单,如下新建q_sort模块,函数如下:

quick_sort([]) -> [];
quick_sort([MidVal | T]) ->
	quick_sort([X || X <- T, X < MidVal]) ++ [MidVal] ++ quick_sort([X || X <- T, X >= MidVal]).

编译后,启动Erlang shell,
执行:q_sort:quick_sort([1,4,3,4]).
结果:[1,3,4,4].
至此快速排序结束

猜你喜欢

转载自blog.csdn.net/qqqrtretretee/article/details/84616919