当前位置: 首页 > news >正文

西安网络公司推荐长沙网络优化产品

西安网络公司推荐,长沙网络优化产品,vue商城模板,韩国吃秀在哪个网站做直播题目描述: 假设有打乱顺序的一群人站成一个队列,数组 people 表示队列中一些人的属性(不一定按顺序)。每个 people[i] [hi, ki] 表示第 i 个人的身高为 hi ,前面 正好 有 ki 个身高大于或等于 hi 的人。 请你重新构造…

题目描述:
假设有打乱顺序的一群人站成一个队列,数组 people 表示队列中一些人的属性(不一定按顺序)。每个 people[i] = [hi, ki] 表示第 i 个人的身高为 hi ,前面 正好 有 ki 个身高大于或等于 hi 的人。
请你重新构造并返回输入数组 people 所表示的队列。返回的队列应该格式化为数组 queue ,其中 queue[j] = [hj, kj] 是队列中第 j 个人的属性(queue[0] 是排在队列前面的人)。

在这里插入图片描述

思路:题目其实是有两个可以排序的,一个是身高 h,一个是人数 k,我们不能两个同时考虑,只能根据其中一个进行排序,推理之后,根据 h 进行从大到小排序会更好,即使在前面位置插入也不会影响大身高的k。

  1. 排序:将people二维数组根据 h 进行从大到小排序,当h相同,选择k大的在前面;
  2. 插入:遍历排序后的数组,根据 k 插入到res列表的第 k 个位置。

代码实现:

class Solution {public int[][] reconstructQueue(int[][] people) {List<int[]> res = new LinkedList<int[]>();// 将二维数组 people 按照 h从大到小进行排序Arrays.sort(people, (x,y) -> x[0]==y[0] ? x[1]-y[1] : y[0]-x[0]);//这句话很重要int len = people.length;// 插入 kfor (int i = 0; i < len; i++) {int position = people[i][1];//当前k,即要插入的位置res.add(position, people[i]);}return res.toArray(new int[res.size()][]);}
}
http://www.ds6.com.cn/news/37246.html

相关文章:

  • 张店网站推广四川网站推广公司
  • 北京网站建设app电子商务平台建设
  • 餐饮品牌设计服务上海搜索引擎关键词优化
  • wordpress esuseo免费工具
  • 专业的营销网站建设公司网站快速排名
  • 用hbuilder静态网站怎么做自己建网站怎么推广
  • 王建设的网站北京seo专业团队
  • 阿里巴巴网站被关闭了要怎么做自己手机怎么免费做网站
  • 服装网站建设多少钱seo网站推广的主要目的包括
  • 公司做网站的优势北京seo公司司
  • 阿里 做网站北京营销推广网站建设
  • 个人电子商务网站建设百度云
  • 移动网站排名怎么做指数分布的分布函数
  • 字幕如何做模板下载网站广东深圳疫情最新情况
  • 网站建设的毕业设计报告写一篇推广商品的软文
  • wordpress odayseo公司网站推广
  • 廊坊做网站优化2021年年度关键词排名
  • 商务网站开发课程建言百度sem竞价推广pdf
  • 制作网站的软件有那个免费微信客户管理系统平台
  • wordpress 首页动画什么公司适合做seo优化
  • 摄影师签约有哪些网站电脑优化大师
  • 济南建设厅官方网站域名备案查询站长工具
  • 商城网站建设明细上海seo优化公司
  • 网站建设知识济宁百度推广公司有几家
  • 国外数据网站怎样留别人电话在广告上
  • 企业做网站的注意事项怎么让网站排名上去
  • 运城做网站费用高吗网站注册查询
  • 婚纱摄影网站建设seo 重庆
  • 做结婚视频储存网站服装品牌策划及营销推广方案
  • 如何建立国际网站seo诊断方案