原文:[Erlang 0064] Erlang Array

从开始学习编程的时候Array就是基础数据结构,也是被使用最频繁的,但是在Erlang中一等公民是List和tuple,在项目中到处都是List的各种处理,但是Array却少见踪迹.好奇心驱使,最近了翻看了一下Array的代码实现. array基础 array可动态扩展大小 可固定大小,可按需自动增长. 如果没有明确赋值会使用默认值undefined,要区分是否赋值过可以使用其它的值 索引计数从 ...

2012-06-14 09:56 1 5850 推荐指数:

查看详情

[Erlang 0045] Erlang 杂记 Ⅲ

学习Erlang有点滴收获就会记录到Evernote,今天又整理出来了一部分,分享一下. 下面的内容有的来自项目实践,有的来自Stackoverflow,erlangqa;erlangqa上的几个问题都是litaocheng给出的答案,厉害! 简单 ...

Sun Mar 11 21:11:00 CST 2012 2 4197
[Erlang 0035] Erlang SMP

Erlang SMP Erlang SMP (Symmetrical Multi Processor)在97-98年左右开始,项目按照先跑起来再优化的开发策略("First make it work, then measure, then optimize ...

Wed Feb 01 20:36:00 CST 2012 1 4436
[Erlang 0046] Erlang Timer

我曾经用mochiweb暴露出来一个接口供测试的同事通过链接修改测试服务器的时间,但是发现Erlang并没有马上使用最新的系统时间,甚至频繁调整系统时间会导致Erlang节点内各种异常,遂放弃这种方案;测试的同事,修改完系统时间之后重启各Erlang节点. 看看下面+c的说明就明白 ...

Fri Mar 16 23:17:00 CST 2012 0 6195
[Erlang 0068] Erlang dict

dict是动态哈希表实现的字典.在接口上和orddict保持一致,在实现上和array动态扩展的思路类似, 与proplists,orddict相比它能够支持更大的数据量,你可以在数据量膨胀的时候从orddict转为dict.dict使用的是动态哈希技术实现,理论依据是论文 ...

Mon Jun 25 06:30:00 CST 2012 1 6341
[Erlang 0028] Erlang atom

Erlang中atom数据类型能够做的唯一的运算就是比较;在erlang中模块名和方法名都是原子;Atom用来构造Tag-Message,Atom的比较时间是常量的,与Atom的长度无关(如果拿binary做tag,比较时间是线性的);Atom就是为比较而设计,除了比较运算不要把 ...

Wed Jan 04 23:57:00 CST 2012 2 6526
[Erlang 0034] Erlang iolist

问题的缘起是芒果在使用mochiweb的过程中遇到一个异常,在google的讨论组中我找到了同样的问题: 提问者遇到这个异常后判断是文档超长造成的,bob在下面的 ...

Wed Feb 01 01:58:00 CST 2012 2 6538
[Erlang 0069] Erlang ordsets

ordsets 是lists实现的有序集合.由于数据元素的变动都会触发重新排序,所以ordsets效率不高,只适用于数据量比较小的场景.ordsets中包含了常见的集合操作:求交集,并集, ...

Sat Jul 07 07:06:00 CST 2012 1 3017
[Erlang 0070] Erlang Queue

Queue 是Erlang的队列,它的内部实现充分考虑到了效率,值得学习.估计"如何用链表高效实现Queue"这个也会在面试题目中频繁出现吧.queue模块中除了len/1, join/2, split/2, filter/2 and member/2复杂度是O(n)之外所有的操作 ...

Tue Jul 10 19:08:00 CST 2012 4 4870
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM