我知道跳过列表是一个已排序的数据结构,但是它可以有重复的元素吗?或者,如果您尝试插入已存在的元素,它是否会将指针返回到预先存在的元素?
答案 0 :(得分:3)
答案是“是的,跳过列表可以有重复的元素,但不是必须的。”
你能制作一个支持重复的跳转列表吗?绝对!您只需更新插入过程,以便在看到要查找的元素时,只需在其后插入元素即可。它类似于如何使用存储多个相等值的BST - 您只需将插入过程始终向左或在找到相同元素时始终向右移动。
但是必须一个跳过列表总是允许重复?不,它没有必要,就像并非所有BST都允许重复一样。
如果您使用的是跳过列表库,请参阅文档以了解它是否支持重复项。如果您正在创建自己的,请随意构建它,并记录您的决定。