满足以下要求的ADT的实现

问题描述 投票:0回答:1

我被要求实现数据结构。经过几次尝试,我遇到了麻烦,我想了解如何使用AVL和哈希表实现以下方法的想法:建议包含一个动态对象集的ADT,以便每个对象都有其唯一值(id),并支持以下内容:

初始化-初始化一个空结构-O(1)。

add(x)-将x插入结构-O(log(n))。

remove(x)-从结构中删除x- O(log(n))。

range(a,b)-假设a小于b,返回键范围为[a,b]-O(log(n)+ k)的对象数组,其中k是范围内的对象。

O(n)的空间复杂度,其中n是给定时间内ADT中对象的数量。您可以假定每个键都是唯一的,不能假定ADT中存在a或b。

algorithm data-structures binary-tree hashtable avl-tree
1个回答
0
投票

skip list可以满足所有这些要求。

© www.soinside.com 2019 - 2024. All rights reserved.