中国人寿研发中心
一面3个面试管,自我介绍、问题:对安全的理解,想做什么方向
一面后技术笔试,3个编程题如下
1.笔试题目 三道题
1.根据身高重建队列
输出是符合题目的要求即->【数组的第一个数字是这个人的身高,第二个数字是排在这个人前面】这个要求。
比如[[7, 0], [6, 1], [7, 1]]
[7, 0] 前面没有比7大的,所以是0
[6, 1] 前面有一个身高7的,所以是1个
[7, 1] 前面有一个身高7的,所以是1个 即全都符合要求
重新排序,矮的放后面,因为矮的即使放在了高的前面,也不会对之前高的产生影响。但高的放在前面,对矮的结果就会产生影响了。
身高相同,个数小的在前面,因为相同的身高,后面的个数肯定要大。
数组的第一个数字是这个人的身高,第二个数字是排在这个人前面,身高大于或者等于这个人身高的人数
身高相同,按照个数升序排序;身高不同,按照身高降序排列
排序后:
[ 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]]
[[5, 0], [7, 0], [5, 2], [6, 1], [7, 1]]
[[5, 0], [7, 0], [5, 2], [6, 1], [4, 4], [7, 1]]
public class Solution {
public static int