编码实现求topk

时间2023-03-24 14:09:29 提问来自 北京市北京市 的网友 分类ChatGPT提问 浏览181 热度0
## 一、暴力求解 ```java public static void topK(int[] arr, int k) { // 暴力求解,时间复杂度O(n*k),空间复杂度O(1) for (int i = 0; i < k; i++) { int maxIndex = i; // 假设最大值下标为i for (int j = i + 1; j < arr.length; j++) { // 遍历剩余元素,找出最大值的下标 if (arr[maxIndex] < arr[j]) { maxIndex = j; // 更新最大值的下标 } } swap(arr, maxIndex, i); // 将最大值交换到数组前面的位置(即i号位置) } System.out.println("top " + k + " : "); // 输出topK元素 for (int i = 0; i < k; ++i) { System.out.print(arr[i] + " "); } } ```

AI智能问答网免责声明:
以上内容除特别注明外均来源于网友提问、ChatGPT回答,权益归原著者所有,本站仅作效果演示和欣赏之用;
若以上展示有冒犯或侵害到您,敬请联系我们进行删除处理,谢谢!

上一篇 帮我画一张胸有成竹的图片(1张) 下一篇 搜索框的用法