qcode
  • 创作工场专业版,一问多答!更智能、更完整、更原创
  • 这是一个超强内容创作平台,它会写文章、做设计、绘图、敲代码,有问必答!
🔥点击使用-免登录深度版🔥

用Java实现算法:小美数组操作求众数最小操作次数

时间2023-08-19 20:34:03 提问来自 黑龙江省哈尔滨市 的网友 分类创作 浏览554
import java.util.Arrays; public class MajorityElement { public static void main(String[] args) { int[] nums = {2, 3, -1, 2, 1, 3}; int minOperations = findMinOperations(nums); System.out.println(minOperations); } public static int findMinOperations(int[] nums) { int n = nums.length; Arrays.sort(nums); // 将数组排序 int mid = nums[n / 2]; // 中位数即为众数 int minOperations = 0; // 计算每个元素与中位数的差值的绝对值之和 for (int i = 0; i < n; i++) { minOperations += Math.abs(nums[i] - mid); } return minOperations; } } // 输出结果为:6 // 解释:将数组变为[-1, 1, 2, 2, 3, 3],众数为2和3,操作次数为6

不满意?免费深度重写!

免责声明:
以上内容除特别注明外均来源于网友提问,创作工场回答,未经许可,严谨转载。

上一篇 小美求01串所有非空连续子串权值之和的算法实现与思路 下一篇 国内江苏佳禾输送设备科技有限公司怎么样?