`
langzhe
  • 浏览: 288069 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

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
分享到:
评论

相关推荐

    Erlang list用法

    Erlang是一种并发、分布式、面向进程的编程语言,广泛用于构建高可用性和容错性的系统。在Erlang中,列表是一种基本的数据结构,提供了丰富的操作函数。以下是对标题和描述中提到的Erlang列表函数的详细解释: 1. `...

    erlang最新api

    ### Erlang标准库(STDLIB)与I/O协议详解 #### 概述 Erlang是一种功能强大且灵活的编程语言,广泛应用于构建高并发、容错性良好的系统。其标准库(STDLIB)提供了丰富的函数集合以及一系列用于简化开发过程的工具。...

    Erlang入门:构建application练习4(进程link的作用)

    在Erlang编程语言中,进程是其核心特性之一,它们是并发执行的实体,类似于其他语言中的线程。在Erlang中,进程间通信(IPC)是通过消息传递来实现的,而`link`机制是这个通信模型中非常重要的一部分。本教程将通过...

    Erlang入门:构建application练习5(监督树)

    Erlang是一种面向并发的、函数式编程语言,特别适合于构建高可用性和容错性的分布式系统。在Erlang中,"应用"(application)是组织代码的基本单元,它包含了模块、配置文件以及启动和停止应用程序的逻辑。在这个...

    Erlang入门:构建application练习2

    Erlang是一种面向并发的、函数式编程语言,由瑞典电信设备制造商Ericsson开发,用于构建高可用性、分布式和实时系统。在本教程中,我们将深入探讨如何使用Erlang构建一个名为"Application"的基本应用程序,这在...

    编写分布式的Erlang程序:陷阱和对策

    ### 编写分布式的Erlang程序:陷阱和对策 #### 摘要与背景 在探讨编写分布式的Erlang程序时,本篇文章聚焦于Erlang编程语言中的分布式特性,尤其是那些容易忽视的陷阱及其对应的解决方案。Erlang作为一种专为构建...

    erlang 程序设计 源码

    在深入理解Erlang程序设计的源码之前,我们需要了解Erlang的一些核心概念和特性。 1. **并发性**:Erlang的并发模型基于轻量级进程(Lightweight Processes,LWP),它们类似于操作系统中的线程,但资源消耗小得多...

    Eralng Maps设计原由

    Erlang Maps设计原由。17版后,还是需要多了解这个maps的。

    erlang-23.2.1-1.el7.x86-64.rpm

    Erlang:RabbitMQ 是用 Erlang 编写的,因此需要 Erlang 运行时。确保安装了兼容的 Erlang 版本;Erlang:RabbitMQ 是用 Erlang 编写的,因此需要 Erlang 运行时。确保安装了兼容的 Erlang 版本;Erlang:RabbitMQ ...

    erlang入门级练习:LeetCode OJ问题的部分erlang 源码

    我自己在新学erlang,在LeetCode OJ上找了题目练习,题目很适合新手熟悉语言,但是LeetCode OJ里面只有几门主流语言的答案,下面是已完成的erlang源代码,后续有空再做其他问题续传,题目包含:(源码开头都有题目...

    erlang 聊天室源码

    在本项目中,我们看到"erlang 聊天室源码"是一个初学者级别的实践项目,开发者花费了两周时间完成,并且在设计上受到了知名消息中间件rabbitMQ的启发。 首先,我们要理解Erlang的核心特性,这包括轻量级进程...

    《Erlang之父:为什么面向对象很糟糕》PDF

    《Erlang之父:为什么面向对象很糟糕》PDF 《Erlang之父:为什么面向对象很糟糕》PDF 《Erlang之父:为什么面向对象很糟糕》PDF 《Erlang之父:为什么面向对象很糟糕》PDF 《Erlang之父:为什么面向对象很糟糕》PDF

    erlang文献及资料汇总

    erlang文献及资料汇总 入门资料: erlang中文手册(R11B 文档译文,最适合入门) erlang位运算与二进制解析 erlang二进制高效编程 erlang异常处理详解 开发经验: 面对软件错误构建可靠的分布式系统 编写分布式的 ...

    Erlang程序设计及源码

    本资源包含了一本Erlang程序设计的入门经典书籍及其配套源码,适合初学者深入理解Erlang编程。 1. **Erlang简介** Erlang以其强大的并发处理能力而闻名,它采用了轻量级进程模型,使得在单个系统中可以同时运行...

    Erlang 安装包(otp_win32_R16B03-1.part1)

    Erlang 安装包(otp_win32_R16B03-1.part1)

    Erlang:并行计算和云计算

    **Erlang: 并行计算与云计算** Erlang是一种动态类型的函数式编程语言,由爱立信在1986年为电话交换系统设计,后来因其在处理并发、分布式和容错性上的优秀特性,逐渐在并行计算和云计算领域崭露头角。 ### 1. ...

    erlang lib of iconv

    总之,Erlang的iconv库是处理字符编码转换的关键工具,对于任何涉及到不同编码格式交互的Erlang开发者来说,理解和掌握它的使用方法都是非常重要的。通过熟练运用这个库,可以有效地解决跨编码环境下的数据处理问题...

    英雄远征erlang服务器源码含数据库

    【标题】:“英雄远征erlang服务器源码含数据库” 【描述】:“Erlang是一种强大的编程语言,以其优秀的高并发性能和热更新能力而闻名。这个资源包含了一个Erlang服务器的源码,特别适合那些希望快速入门Erlang编程...

    erlang游戏服务器网关源码.zip

    开发者可以通过研究这些源码,学习如何在Erlang中构建复杂的游戏服务架构,理解如何处理网络通信、错误恢复、以及应用的生命周期管理。对于想要深入理解Erlang在游戏服务器开发中的应用,这个源码包是一个很好的学习...

    erlang聊天室源码

    **Erlang聊天室源码解析** Erlang是一种面向并发的编程语言,因其在分布式系统和高可用性服务中的出色表现,常被用于构建消息队列如RabbitMQ这样的项目。本篇将深入探讨一个基于Erlang实现的简单聊天室源码,帮助...

Global site tag (gtag.js) - Google Analytics