一、一面 笔试
直接给你发了一份笔试题,让你24小时内回传
- 合并时间区间(建议时间复杂度 O(n) )
给定⼀个按开始时间从⼩到⼤排序的时间区间集合,请将重叠的区间合并。时
间区间集合⽤⼀个⼆维数组表示,⼆维数组的每⼀⾏表示⼀个时间区间(闭区
间),其中 0 位置元素表示时间区间开始,1 位置元素表示时间区间结束。
例 1:输⼊:[ [1, 3], [2, 6], [8, 10], [15, 18] ]
返回: [ [1, 6], [8, 10], [15, 18]]
解释:时间区间 [1, 3] 和 [2, 6] 有部分重叠,合并之后为 [1, 6]
例 2:输⼊:[[1, 4], [4, 5]]
返回:[[1, 5]]
解释:时间区间[1,4] 和 [4,5]重叠了⼀个时间点,合并之后为 [1,5]
需要实现的⽅法原型:int[][] merge(int[][] intervals) - 缩写校验(建议时间复杂度 O(n) )
给定⼀个⾮空字符串 s 和⼀个缩写 abbr,请校验它们是否匹配。
假设字符串中只包含⼩写字⺟,缩写中只包含⼩写字⺟和数字。缩写中的数字
表示其缩略的字符数;连续多位数字表示⼀个多位数。
例如,字符串 “word” 的缩写有且仅有以下这些:[“word", “1ord”, “w1rd”,
“wo1d”, “wor1”, “2rd”, “w2d”, “wo2”, “1o1d”, “1or1”, “w1r1”, “1o2”, “2r1”, “3d”,
“w3”, “4"]。
例 1:输⼊:s = “internationalization",abbr = “i12iz4n”
返回:true
解释:abbr 中的 12 表示有⼗⼆个字符被缩略了。
例 2:输⼊:s = “apple",abbr = “a2e"
返回:false
需要实现的⽅法原型:boolean valid(String word, String abbr) - 最⼩惩罚
给定

最低0.47元/天 解锁文章
745





