第四十七天:力扣第452题,用最少数量的箭引爆气球
地址:leetcode-cn.com/problems/mi…
思路:按数组每项的最后一项排序,就是points[i][1]从小到大排序,然后进行判断,若是前一项的第二项比后一项的第一项大或等于,则总箭数减一。(points[i][1] >= points[i + flag][0])
var findMinArrowShots = function(points) {
points.sort((a, b) => a[1] - b[1]);
let res = points.length;
let flag = 1;
for(let i = 0; i + flag < points.length; i++)
{
if(points[i][1] >= points[i + flag][0])
{
res--;
flag++;
i--;
}
else
{
i = i + flag - 1;
flag = 1;
}
}
return res;
};
执行用时:124 ms, 在所有 JavaScript 提交中击败了83.03%的用户
内存消耗:44.6 MB, 在所有 JavaScript 提交中击败了46.95%的用户