我试图在给定排序数组的情况下找到最大的K个数字。例如:输入 - > [ 5, 12, 45, 32, 9, 20, 15] 输出 -> K = 3, [45, 32, 20]到目前为止,我编写的代码返回最大的 K 元素,但它需要返回最大的 K 个数字。任何帮助将不胜感激。public static int max_Numbers(int [] p, int K, int firstNum, int lastNum) { int pivot = partitionArr(p, firstNum, lastNum); int m = p.length - K; if (m == pivot) { return p[pivot]; } if(m > pivot) { return max_Numbers(p, K, pivot + 1, lastNum); } else { return max_Numbers(p, K, firstNum, pivot - 1); } }
添加回答
举报
0/150
提交
取消