首页 » 算法技术手册 » 算法技术手册全文在线阅读

《算法技术手册》驱动因素

关灯直达底部

从集合C中的元素个数n以及你将要执行的查找次数来看,顺序查找也许是最有效的查找算法。如果n相当低效,或者你不经常执行查找操作,那么对元素排序或者使用一个复杂的数据结构将得不偿失。

如果集合是无序的,并且是以链表的形式存储的,那么插入元素是一个常数时间的操作(仅仅简单地插入到表头或者表尾)。频繁地插入到一个数组形式存储的集合需要动态的数组管理,这个特性要么由编程语言提供,要么需要程序员自己处理。在这两种情况下,寻找一个元素的期望时间是O(n),因此,移除一个元素需要至少O(n)时间。

顺序查找在元素的类型上限制最少。唯一的要求就是必须有一个匹配函数来决定是否目标元素和集合中的当前元素匹配,这个功能适合元素本身相关的。对于是否有序没有额外的要求。