首页  >  文章  >  后端开发  >  一个包含n个元素且具有O(1)操作的数据结构?

一个包含n个元素且具有O(1)操作的数据结构?

WBOY
WBOY转载
2023-08-29 18:53:111006浏览

一个包含n个元素且具有O(1)操作的数据结构?

在这里,我们将看到一个包含 n 个元素的数据结构和 O(1) 操作。因此,操作将花费恒定的时间来执行。

数据结构将保存 n 个元素(从 0 到 n-1)。数据可以按任何顺序。插入、删除和搜索将花费 O(1) 时间。

为了解决这个问题,我们将使用一个布尔数组。这将表明该项目是否存在于位置 i。如果该项存在,则为 1,否则为 0。

算法

初始化(n)

begin
   fill all elements of the Boolean array as 0
end

插入(i)

begin
   set element at index i as 1(true)
end

删除(i)

begin
set element at index i as 0(false)
end

搜索(i)

begin
   return item at position i
end

示例

//initialization
void init(int n) {
   bool dataStructure[n];
   for (int i = 0; i<n; i++)
      dataStructure[i] = 0;
}
//Insertion
void insert(unsigned i) {
   dataStructure[i] = 1;
}
//Deletion
void delete(unsigned i) {
   dataStructure[i] = 0;
}
//Search
bool search(unsigned i) {
   return dataStructure[i];
}

以上是一个包含n个元素且具有O(1)操作的数据结构?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文转载于:tutorialspoint.com。如有侵权,请联系admin@php.cn删除