我有一个算法问题。给定k个大于0的整数集合(不一定是相同大小),我必须从每个集合中选择一个数字,使得最大值和最小值之间的差异最小。
例子: k=5
集合1:89 45 22 16
集合2:89 34
集合3:37 62 89
集合4:89 96
集合5:89 91 94
答案:从所有集合中选择89,差异为0。
例2(更难) k=5
集合1:12 19 44 52 59 100
集合2:35 60 90 94 98 101
集合3:48 49 57 64 78 90
集合4:15 38 56 90 97
集合5:54 58 59 89 202
答案:选择k个元素为52, 60, 57, 56, 54,差异为60-52=8。
如何解决这个问题?
例子: k=5
集合1:89 45 22 16
集合2:89 34
集合3:37 62 89
集合4:89 96
集合5:89 91 94
答案:从所有集合中选择89,差异为0。
例2(更难) k=5
集合1:12 19 44 52 59 100
集合2:35 60 90 94 98 101
集合3:48 49 57 64 78 90
集合4:15 38 56 90 97
集合5:54 58 59 89 202
答案:选择k个元素为52, 60, 57, 56, 54,差异为60-52=8。
如何解决这个问题?