python按身高体重排队_LeetCode-python 406.根据身高重建队列

题目链接

难度:中等       类型: 数组

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

注意:

总人数少于1100人。

示例

输入:

[[7,0], [4,4], [7,1], [5,0], [6,1], [5,2]]

输出:

[[5,0], [7,0], [5,2], [6,1], [4,4], [7,1]]

解题思路

1.排序:按照身高从高到低排,升高相同的按k从小到大排

2.插入:按照排序好的顺序逐个插入新数组,插入的位置按照k来插

如示例中,排序完:

[[7,0], [7,1], [6,1], [5,0], [5,2],[4,4]]

插入的过程:

第一插:[[7,0]]

第二插:[[7,0], [7,1]]

第三插:[[7,0], [6,1],[7,1]]

第四插:[[5,0],[7,0], [6,1],[7,1]]

...

先插高的,后插矮的,即使后插的插到前面也不会有影像,因为矮

代码实现

class Solution(object):

def reconstructQueue(self, people):

"""

:type people: List[List[int]]

:rtype: List[List[int]]

"""

people.sort(key=lambda (h, k): (-h, k))

res = []

for p in people:

res.insert(p[1],p)

return res

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/457489.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

远程连接mysql数据库,1130问题

远程或使用非127.0.0.1和localhost地址连接时,出现代号为1130问题, ERROR 1130: Host 192.168.2.159 is not allowed to connect to this MySQL server 猜想这是没有授权,将mysql数据库中user表中host列的localhost改为%,重新启动…

华为手机充满有提醒吗_2020手机充电速度排名:最快21分钟充满,华为第15名

5G手机扎堆出现,中国5G基站数量也是不断增多,中国移动曾经表态,2020年底将会在全国地级市覆盖5G网络,全民5G时代终于到来!从目前国内手机出货量数据来看,5G手机占比已经达到了六成以上,国产5G手…

关于移动手机端富文本编辑器qeditor图片上传改造

日前项目需要在移动端增加富文本编辑,上网找了下,大多数都是针对pc版的,不太兼容手机,当然由于手机屏幕小等原因也限制富文本编辑器的众多强大功能,所以要找的编辑器功能必须是精简的。 找了好久,发现qedit…

【python】生成器

生成器 直接总结 创建生成器的方法 生成器表达式:(i for i in [1, 2])yield: 函数中出现yield这个函数就是生成器,函数(生成器)执行到yield时会返回yield后面的值,并暂停,知道下次被唤醒后会从暂停处接着…

python redis 性能测试台_Redis性能测试

Redis 性能测试Redis 性能测试是通过同时执行多个命令实现的。Redis性能测试主要是通过src文件夹下的redis-benchmark来实现(Linux系统下)语法redis 性能测试的基本命令如下:redis-benchmark [option] [option value]实例以下实例同时执行 10000 个请求来检测性能&a…

Java IO 系统

Java IO系统 File类 用来处理文件目录,既可以代表一个特定文件的名称,也可以代表一组文件的名称,如果代表的是一个文件组,可以调用File.list()方法返回一个字符数组。 list()不传递任何参数时返回该目录下所有文件或文件名的字…

Linux Crontab 任务管理工具命令以及示例

Crontab 是 Linux 平台下的一款用于循环执行例行任务的工具,Linux 系统由 cron (crond) 这个系统服务来控制任务 , Linux系统本来就有很多的计划任务需要启动 , 所以这个系统服务是默认开机启动的 。 Linux 为使用者提供的计划任务的命令就是 Crontab Crontab 是 Linux 下用来周…

Linux 网络编程详解一(IP套接字结构体、网络字节序,地址转换函数)

IPv4套接字地址结构 struct sockaddr_in {uint8_t sinlen;(4个字节)sa_family_t sin_family;(4个字节)in_port_t sin_port;(2个字节)struct in_addr sin_addr;(4个字节)char sin_zer…

地籍cad的lisp程序大集合_AutoCAD-LISP程序100例

{:soso_e179:}AutoCAD-LISP程序100例.JPG (143.82 KB, 下载次数: 28)2011-10-18 14:42 上传有说明很好!顶如果您使用 AutoCAD,下面的内容对您一定有帮助。在某些方面能大大提高您的工作效率。下面的程序均以源程序方式给出,您可以使用、参考、修改它。bg…

javascript中数组的22种方法

前面的话数组总共有22种方法,本文将其分为对象继承方法、数组转换方法、栈和队列方法、数组排序方法、数组拼接方法、创建子数组方法、数组删改方法、数组位置方法、数组归并方法和数组迭代方法共10类来进行详细介绍对象继承方法数组是一种特殊的对象,继…

javascript/jquery高度宽度详情解说分析

为什么80%的码农都做不了架构师?>>> 一、window对象表示浏览器中打开的窗口 二、window对象可以省略 一、document对象是window对象的一部分 二、浏览器的HTML文档成为Document对象 window.location和document.location window对象的location属性引用的…

农用地包括哪些地类_土地地类一览表

一级类二级类三级类含义编号三大类名称编号名称编号名称1农用地指直接用于农业生产的土地,包括耕地,园地,林地,牧草地及其他的农业用地11耕地指种植农作物、土地,包括熟地、新开发复垦整理地,休闲地、轮歇地…

红黑树插入时的自平衡

红黑树插入时的自平衡 红黑树实质上是一棵自平衡的二叉查找树,引入带颜色的节点也是为了方便在进行插入或删除操作时,如果破坏了二叉查找树的平衡性能通过一系列变换保持平衡。 红黑树的性质 每个节点要么是红色,要么是黑色根节点必须是黑…

说一下自己对于 Linux 哲学的理解

查阅了一些资料,官方的哲学思想貌似是: 一切皆文件由众多单一目的的小程序,一个程序只实现一个功能,多个程序组合完成复杂任务文本文件保存配置信息尽量避免与用户交互什么,你问我的理解?哲学思想&#xff…

UWP学习记录

微软{X:Bind}、{Binding}资料网站 &#xff1a; https://msdn.microsoft.com/windows/uwp/xaml-platform/x-bind-markup-extension在View的ItemTemplate中绑定ViewModel的方法&#xff1a;1 <ItemsControl Name"XX" ItemsSource"{x:Bind VM.XXModels,ModeOne…

dw1000信标码_DW1000方案工牌型UWB标签,助力10厘米高精度室内定位!

DW1000方案工牌型UWB标签&#xff0c;助力10厘米高精度室内定位&#xff01;发布日期&#xff1a;2019-04-01 浏览次数&#xff1a;244次微能信息(95power)推出一款工牌型UWB标签VDU1510 &#xff0c;广泛应用于超宽带UWB定位系统&#xff0c;最高可实现10cm高精度人员定位。工…

【Java】HashMap源码(1.7)

Life is not a ridiculous number of life, the meaning of life lies in life itself HashMap源码 散列集 数组和链表可以保持元素插入的顺序&#xff0c;对数组来说&#xff0c;他的优点是拥有连续的存储空间&#xff0c;因此可以使用元素下标快速访问&#xff0c;但缺点在…

Docker 基本用法

1.安装&#xff1a; wget http://mirrors.yun-idc.com/epel/6/i386/epel-release-6-8.noarch.rpm rpm -ivh epel-release-6-8.noarch.rpm yum install docker-io -y2.获取镜像 pull docker pull ubuntu docker pull ubuntu:14.043.运行这个镜像&#xff0c;在其中运行bash应用…

画刷的使用

1.画刷的定义&#xff1a; HBRUSH hBrush; windows 自定义的画刷&#xff1a; WHITE_BRUSH、LTGRAY_BRUSH、GRAY_BRUSH、DKGRAY_BRUSH、BLACK_BRUSH和NULL_BRUSH &#xff08;也叫HOLLOW_BRUSH&#xff09; 获取方法如下&#xff1a; hBrush (HBRUSH) GetStockObject (GRAY_BR…

dataframe 控对象_iOS知识 - 常用小技巧大杂烩

1&#xff0c;打印View所有子视图po [[self view]recursiveDescription]2&#xff0c;layoutSubviews调用的调用时机* 当视图第一次显示的时候会被调用。* 添加子视图也会调用这个方法。* 当本视图的大小发生改变的时候是会调用的。* 当子视图的frame发生改变的时候是会调用的。…