题目来自阿里面试题目
题目
(1)已知A B两个数组,元素有序,构造新的集合S={x*y | x属于A, y属于B} 求S中最小的k个元素,最优解法。
(2)已知A B两个数组,元素有序,构造新的集合S={x+y | x属于A, y属于B} 求S中最小的k个元素,最优解法。
思路:这两个题本质上属于同一个题目,可以使用同一个思路做。
思路(1) 暴力解决,此时时间复杂度为O(n*m),空间复杂度O(1).
这道阿里面试题目要求从两个有序数组A和B中,构造集合S,包含元素之积或之和,然后找出S中最小的k个元素。暴力解法的时间复杂度为O(n*m),但更优的解法是使用游标,时间复杂度降低到O(k*min(m,n)),空间复杂度为O(min(m,n))。"
82146657,7846610,区块链的长远发展:应用而非发币,"['区块链', '数字货币', '技术发展', '行业应用', '互联网重塑']
题目来自阿里面试题目
题目
(1)已知A B两个数组,元素有序,构造新的集合S={x*y | x属于A, y属于B} 求S中最小的k个元素,最优解法。
(2)已知A B两个数组,元素有序,构造新的集合S={x+y | x属于A, y属于B} 求S中最小的k个元素,最优解法。
思路:这两个题本质上属于同一个题目,可以使用同一个思路做。
思路(1) 暴力解决,此时时间复杂度为O(n*m),空间复杂度O(1).
2639
585
412