是否有可以排序和搜索的Python数据结构?

我正在使用
python来管理要处理的字符串队列.它有几个要求:

>每个字符串都与优先级匹配,并且仅根据该值进行处理.
>可以动态地将字符串添加到此队列,但队列中不允许重复的字符串.如果提交了副本,则必须标识并忽略它.

那么是否有任何python数据类型允许这样的东西?或者我必须自己写?

如果那时没有本土的那个,我正在考虑维护两个结构.

> A heapq将保持字符串及其优先级
> A list,它维护字符串的散列以检查字符串是否已存储

只要这些不会失去同步,它就应该解决问题.

最佳答案 这听起来像是一种合理的方法.我会使用一个集合而不是列表,因为它具有更高效的成员资格检查,您不需要维护顺序(因为您在heapq中执行此操作)

点赞