Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Algorithm 特定问题的数据结构?_Algorithm_Data Structures - Fatal编程技术网

Algorithm 特定问题的数据结构?

Algorithm 特定问题的数据结构?,algorithm,data-structures,Algorithm,Data Structures,在最坏的情况下,哪种数据结构可以在O(1)时间内执行插入、删除和搜索操作 我们可以假设元素集是从有限集1,2,…,n中提取的整数,初始化可能需要O(n)个时间 我只能考虑实现一个哈希表 用树实现它不会给任何操作带来O(1)时间复杂性。还是有可能 请分享您对此或除此之外的任何其他数据结构的看法 谢谢。虽然这听起来像是家庭作业,但如果有足够的内存,您可以使用数组。对任何一个元素的访问都是O(1)。如果使用每个单元格来记录遇到的该类型整数的数量,则插入值也将为O(1)。搜索将是O(1),因为它需要在该

在最坏的情况下,哪种数据结构可以在O(1)时间内执行插入、删除和搜索操作

我们可以假设元素集是从有限集1,2,…,n中提取的整数,初始化可能需要O(n)个时间

我只能考虑实现一个哈希表

用树实现它不会给任何操作带来O(1)时间复杂性。还是有可能

请分享您对此或除此之外的任何其他数据结构的看法


谢谢。

虽然这听起来像是家庭作业,但如果有足够的内存,您可以使用数组。对任何一个元素的访问都是O(1)。如果使用每个单元格来记录遇到的该类型整数的数量,则插入值也将为O(1)。搜索将是O(1),因为它需要在该索引处对数组进行索引并查看计数。基本上这就是基数排序的工作原理。

取决于数组可能执行的元素范围,但对于大量数据,您需要一个哈希表。它将为您提供O(1)个摊销业务。

我喜欢它!这一定是我读过的世界上最简单的哈希表实现。当然,您牺牲了一点通用性,但看看实现简单性的好处+这不是一个家庭作业,但我正试图根据自己的兴趣解决一些算法问题,并试图通过这个论坛寻求尽可能多的经验。。这个论坛太棒了!有经验丰富的人在那里解决问题。。非常感谢+1..@AGeek:在这种情况下,您可能也喜欢此链接,它不是哈希表-它是位图(或者如果可以多次插入相同的值,则为计数位图,或者仅为数组)。您真的只想存储具有已知上限的整数吗?如果是这样的话,罗马军队就把它钉死了。如果你真的想储存其他东西,你应该让我们知道。