查找其最小和最大第一个元素之间具有最大差异的元组

问题描述

给定一个 (a,b) 形式的元素数组,其中 a 是整数,b 是字符串。
数组按 a一个元素排序。我们必须找到 string b
其中最低 a 和最高 a 之间的差异最大。

我的想法: 一个简单的方法是将每个字符串散列到一个 HashTable 中,确保没有两个相同的字符串
映射到同一个哈希表。现在考虑字符串 b 的任何存储桶,我们只需要存储
该桶中的两个两个元素,一个是迄今为止遇到的最大值,一个是遇到的最小值
直到现在。一旦填充了哈希表,我们就必须遍历所有字符串和
找出差异最大的那个。

在这可以在 O(N) 时间内运行
但这里唯一有问题的假设是字符串将进入不同的桶
这不能简单地通过 HashTable 的任何实现来保证,同时保持
插入、搜索删除的平均时间复杂度为 Theta(1)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)