Erlang lists:sort 源码方法

注释写的真好

 406 %% sort(List) -> L

 407 %%  sorts the list L

 408 

 409 -spec sort(List1) -> List2 when

 410       List1 :: [T],

 411       List2 :: [T],

 412       T :: term().

 413 

 414 sort([X, Y | L] = L0) when X =< Y ->

 415     case L of

 416         [] -> 

 417             L0;

 418         [Z] when Y =< Z ->

 419             L0;

 420         [Z] when X =< Z ->

 421             [X, Z, Y];

 422         [Z] ->

 423             [Z, X, Y];

 424         _ when X == Y ->

 425             sort_1(Y, L, [X]);

 426         _ ->

 427             split_1(X, Y, L, [], [])

 428     end;

 429 sort([X, Y | L]) ->

 430     case L of

 431         [] ->

 432             [Y, X];

。。。。。。。。。。。。。。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值