- 浏览: 70994 次
- 性别:
- 来自: 杭州
最新评论
关联数组(associative array )是一种常用的抽象数据类型。它有很多别名,例如associative container , map , mapping , dictionary , finite map , table,index 等。它的特点是由一个关键字和其他各种属性组成的集合。典型的操作包括插入,删除和查找等。而用于描述关联数组最常用的是哈希表 (hash table )和自平衡二叉搜索树(self-balanced binary search tree )(包括红黑树 (red-black tree )和avl树 (avl tree ),有时可能使用B-tree (适用于关联数组太大的情况,比如数据库等))。哈希表和自平衡二叉搜索树的性能对比如下:平均情况下哈希表的查找和插入操作的复杂度为O(1),而自平 衡二叉搜索树的查找和插入操作的复杂度为O(log(n))。而最坏情况下平衡二叉搜索树的查找和插入操作的复杂度仍为O(log(n)),而哈希表的查 找和插入操作的复杂度可能达到O(n)。
相关链接直接参考维基百科中内容即可,另有一篇中文的文章也不错,链接:
由于c语言标准库中缺乏对各种抽象数据类型的支持,c语言下对各种抽象数据类型的操作比较麻烦,从网上找了一些C语言的数据结构库,感兴趣的可以看看:
uthash (hash table)
发表评论
-
最小c编译器
2011-11-08 14:09 1434最小c编译器(来源 (最好在linux下操作))代码有好几个 ... -
the development of c language(转)
2011-11-08 09:25 1125c语言之父Dennis Ritchie 写的关于c语言开发历 ... -
C语言,你真的弄懂了么?
2011-11-07 12:42 1736程序(来源 ): #include <stdi ... -
pe文件格式实例解析
2011-11-07 10:05 0环境:windows xp 速龙3000+(即x86兼容32位 ... -
小型elf "Hello,World"程序
2011-11-06 23:59 1335参考链接:http://timelessname.com/el ... -
elf文件格式实例解析
2011-11-05 23:00 6292试验环境:archlinux 速龙3000+(即x86兼 ... -
高质量的c源代码
2011-11-03 10:18 1107现在自由软件及开源软件越来越流行,有大量的附带源程序 ... -
fltk 库
2011-09-26 19:47 1784fltk是一个小型、开源、支持OpenGL 、跨平台(win ... -
《Introduction to Computing Systems: From bits and gates to C and beyond》
2011-09-25 23:33 2131很好的一本计算机的入门书,被很多学校采纳作为教材,作者Yale ... -
csapp bufbomb实验
2011-09-16 14:21 4569csapp (《深入理解计算机系统》)一书中有一个关于缓冲区 ... -
the blocks problem(uva 101 or poj 1208)
2011-09-11 20:57 1808题目描述见:uva 101 or poj 1208 ... -
the blocks problem(uva 101 or poj 1208)
2011-09-11 20:56 0题目描述见:uva 101 or poj 1208 ... -
部分排序算法c语言实现
2011-09-02 14:51 999代码比较粗糙,主要是用于对排序算法的理解,因而忽略了边界和容错 ... -
编译器开发相关资源
2011-08-31 08:40 1178开发编译器相关的一些网络资源: how difficu ... -
zoj 1025 Wooden Sticks
2011-07-23 20:25 949题目见:zoj 1025 先对木棒按照长度进行排序,然后再计 ... -
zoj 1088 System Overload
2011-07-23 17:30 1145约瑟夫环 (josephus problem )问题, ... -
zoj 1091 Knight Moves
2011-07-23 09:05 824题目见zoj 1091 使用宽度搜索优先来求解, ... -
zoj 1078 palindrom numbers
2011-07-22 19:31 1128题目见zoj 1078 主要是判断一个整数在基数为2 ... -
zoj 1006 do the untwist
2011-07-22 13:24 910题目见zoj 1006 或poj 1317 简单 ... -
zoj 3488 conic section
2011-07-22 12:23 975题目见zoj 3488 很简单的题目,却没能一次搞定,因 ...
相关推荐
关联数组 Map和Array的组合可保持键的顺序。 用法 var AssociativeArray = require ( 'associative-array' ) ; var arr = new AssociativeArray ( ) ; arr . push ( 'key' , { value : 'value' } ) ; arr . push ( '...
“名称/值”对的集合,在PHP中可以理解为关联数组 (associative array)。 值的有序列表(An ordered list of values)。在PHP中可以理解为普通数组(array)。 对象是一个无序的“‘名称/值’对”集合。一个...
一个 ASP 类,可以像在 PHP 中一样创建简单的关联数组; 您可以以编程方式管理任何结构化数据; 该类还提供了从 MySQL 或 MSAccess 数据库加载数据或将关联数组导出到 XML 的方法。
实现关联数组的Delphi类。 键可以是字符串或整数。 密钥存储在红黑树中。 数组可以包含TObjects或它的后代。
不同的语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array)。 * 值的有序列表(An ...
字典,又称为符号表( symbol table )、关联数组( associative array )或映射(map), 是一种用于保存键值对( key-value pair )的抽象数据结构。 4.1 字典的实现 24 Redis的字典使用哈希表作为底层实现,一个哈希表里面...
首先说明一下什么是 radix tree ,Radix tree 是一个 压缩 trie, trie 是一种通过保存关联数组(associative array)来提供 关键字-值(key-value) 存储与查找的数据结构。通常关键字是字符串,不过也可以是...
不同的语言中,它被理解为对象(object),记录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array)。 2. 值的有序列表(An ...
关联数组:关联(associative)关联以字符串做索引值,索引值为列名,用语访问列的数据。 数组通常用赋值的方式 一般情况下数组赋值有两种方式: $a[1]=”dsadsadsa”; $b[2]=”dsadsadsad”; 使用array函数: $a=...
不同的语言中,它被理解为对象(object),记录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array)。 2. 值
不同的语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表 (hash table),有键列表(keyed list),或者关联数组 (associative array)。 在 Java 语言中,我们可以...
传统上把数组(array)定义为一组有某种共同特性的元素,这里的共同特性包括相似性(车模、棒球队、水果类型等)和类型(例如所有元素都是字符串...这些键可以是数值(numerical) 健或关联(associative)健。数值键与
JavaScript对象也可以称作一种数据结构,正如我们经常听说的“散列(hash)”、“散列表(hashtable)”、“字典 (dictionary)”、“关联数组(associative array)”。 JavaScript中对象可以分为三类: ①内置...
JavaScript对象也可以称作一种数据结构,正如我们经常听说的“散列(hash)”、“散列表(hashtable)”、“字典 (dictionary)”、“关联数组(associative array)”。 JavaScript中对象可以分为三类: ①内置...
“名称/值”对的集合不同的语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array)。...
array 数组 arrow operator 箭头操作符 ASP(Active Server Page)活动服务器页面 ASP.NET worker process ASP.NET工作者进程 assembly 装配件、配件 assembly language 汇编语言 assembly manifest 装配件清单 assert...
不同的语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array)。 { "name":"smith", ...
常用的数据结构有array(数组)、vector(向量)、list(列表)、tree(树)、stack(栈)、queue(队列)、hash table(散列表)、set(集合)、map(映射表)等等。这些数据结构按结构可以分为序列式(sequence)...