根据身高重建队列

根据身高重建队列

假设有打乱顺序的一群人站成一个队列。每个人由一个整数对 (h, k) 表示,其中 h 是这个人的身高,k 是排在这个人前面且身高大于或等于 h 的人数。 编写一个算法来重建这个队列。

解题思路

先排序,再插入,排序的规则是:按照高度 h 降序,k 升序排序。再遍历排序后的数组,根据 k 将元素插入到 k 的位置上。核心思想是:高个子先站好位,矮个子插入到 k 位置上,前面肯定有 k 个高个子

class Solution {
    
    public int[][] reconstructQueue(int[][] people) {
        Arrays.sort(people, (o1, o2) -> o1[0] == o2[0] ? o1[1] - o2[1] : o2[0] - o1[0]);
        LinkedList<int[]> list = new LinkedList<>();
        for (int[] i : people) {
            list.add(i[1], i);
        }
        return list.toArray(new int[list.size()][2]);
    }
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/2598.html原文链接:https://javaforall.net

(0)
上一篇 2020年11月19日 下午10:16
下一篇 2020年11月19日 下午10:16


相关推荐

  • 绝句。。。。

    绝句。。。。

    2021年4月29日
    141
  • python中os.walk_python pathlib

    python中os.walk_python pathlibpython os.walk详解

    2022年4月21日
    44
  • Mysql 5.7解压版下载安装及配置教程

    Mysql 5.7解压版下载安装及配置教程最近在学习中用到了MySQL数据库,在安装过程中遇到了不少问题,在翻了大半天百度后,问题基本都解决了,所以写一篇MySQL5.7解压版的图文详细安装教程。至于为什么我会选择解压版而不是安装版,一是因为安装版没有64位版本;二是因为安装版的软件在重装系统或者挪动软件的位置后,就会出现无法使用的情况,而大部分绿色版或者解压版的软件就不存在这样的问题,只需要重新配置一下即可使用。如果你是刚接触MySQL的同学,安装版也是你不错的选择,安装时无脑点下一步基本就可以装好,默认参数程序都会给你配好,既简单又方.

    2022年5月7日
    49
  • SPSS实战:单因素方差分析(ANOVA)

    SPSS实战:单因素方差分析(ANOVA)SPSS:单因素方差分析方差分析单因素方差分析单因素方差分析的原理单因素方差分析的SPSS操作方差分析方差分析是一种假设检验,它把观测总变异的平方和与自由度分解为对应不同变异来源的平方和与自由度,将某种控制性因素所导致的系统性误差和其他随机性误差进行对比,从而推断各组样本之间是否存在显著性差异,以分析该因素是否对总体存在显著性影响。方差分析法采用离差平方和对变差进行度量,从总离差平方和分解出可追溯到指定来源的部分离差平方和。方差分析要求样本满足以下条件:可比性:资料中各组均数本身必须具有可比性,这是

    2022年7月27日
    43
  • AI 应用即智能体:探索从 Composer 到 Manus 下的范式演进

    AI 应用即智能体:探索从 Composer 到 Manus 下的范式演进

    2026年3月16日
    2
  • ICEM二维网格

    ICEM二维网格非结构网格结构网格拓扑拓扑完建立part边界条件,然后创建block拓扑完后进行边界条件关联全局网格设置转载于:https://www.cnblogs.com/Jay-CFD/p/8795203.html…

    2022年5月13日
    42

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号