LeetCode每日一题: 高度检查器(No.1051)

栏目: 编程工具 · 发布时间: 6年前

学校在拍年度纪念照时,一般要求学生按照 非递减 的高度顺序排列。
请你返回至少有多少个学生没有站在正确位置数量。
该人数指的是:能让所有学生以 非递减 高度排列的必要移动人数。
复制代码

示例:

输入:[1,1,4,2,1,3]
输出:3
解释:
高度为 43 和最后一个 1 的学生,没有站在正确的位置。
复制代码

思考:

先将数组排序,再与原数组中元素比较,对应位置元素不相同学生人数+1
复制代码

实现:

class Solution {
    public int heightChecker(int[] heights) {
        int[] copy = Arrays.copyOf(heights, heights.length);
        Arrays.sort(copy);
        int diff = 0;
        for (int count = 0; count < heights.length; count++) {
            if (heights[count] != copy[count]) {
                diff++;
            }
        }
        return diff;
    }
}复制代码

以上所述就是小编给大家介绍的《LeetCode每日一题: 高度检查器(No.1051)》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

C++ API设计

C++ API设计

[美] Martin Reddy / 刘晓娜、臧秀涛、林健 / 人民邮电出版社 / 2013-8 / 89.00

现代软件开发中的一大难题就是如何编写优质的API。API负责为某个组件提供逻辑接口并隐藏该模块的内部细节。多数程序员依靠的是经验和冒险,从而很难达到健壮、高效、稳定、可扩展性强的要求。Martin Reddy博士在自己多年经验基础之上,对于不同API风格与模式,总结出了API设计的种种最佳策略,着重针对大规模长期开发项目,辅以翔实的代码范例,从而有助于设计决策的成功实施,以及软件项目的健壮性及稳定......一起来看看 《C++ API设计》 这本书的介绍吧!

MD5 加密
MD5 加密

MD5 加密工具

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换