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

银川网站开发百度手游app下载

银川网站开发,百度手游app下载,南昌市新农村建设网站,长沙网站seo分析碎碎念#xff1a;加油 参考#xff1a;代码随想录 452. 用最少数量的箭引爆气球 题目链接 452. 用最少数量的箭引爆气球 思想 局部最优#xff1a; 让重叠的气球尽量在一起#xff0c;用一支弓箭射。 全局最优#xff1a; 用最少数量的箭引爆气球。 首先对气球进行排…碎碎念加油 参考代码随想录 452. 用最少数量的箭引爆气球 题目链接 452. 用最少数量的箭引爆气球 思想 局部最优 让重叠的气球尽量在一起用一支弓箭射。 全局最优 用最少数量的箭引爆气球。 首先对气球进行排序可以按照左边界排序这样可能会重叠的气球排在一起。 如何判断气球重叠 因为左边界已经排序了所以判断看右边界即可。如果第i个气球的左边界小于等于前一个气球的右边界说明两个气球重叠了。 此时我们想看这两个气球和下一个气球是否重叠 就需要更新右边界更新为两个气球右边界的最小值。更新右边界用来和下一个气球比较。 题解 // cpp class Solution { public:static bool cmp(const vectorint a, const vectorint b) {return a[0] b[0];}int findMinArrowShots(vectorvectorint points) {if (points.size() 0) return 0;sort(points.begin(), points.end(), cmp);int result 1;for (int i 1; i points.size(); i) {if (points[i][0] points[i - 1][1]) {result;} else {points[i][1] min(points[i][0], points[i - 1][0]);}}return result;} };# python class Solution:def findMinArrowShots(self, points: List[List[int]]) - int:if len(points) 0:return 0points.sort(keylambda x:x[0])result 1for i in range(1, len(points)):if points[i][0] points[i - 1][1]:result 1else:points[i][1] min(points[i][1], points[i - 1][1])return result反思 result从1开始因为显然使得所有气球都爆炸的箭的数量最少为1。 435. 无重叠区间 题目链接 435. 无重叠区间 思想 本题的思想和上一题很相似。 首先排序让相邻的区间尽可能挨在一起。本做法用的是按照左边界排序。 判断相邻区间是否重叠 如果当前遍历到的区间的左边界小于上一个区间的右边界那么它们就是重叠的result加一更新右边界的大小更新为两个区间右边界中较小的那个。 题解 // cpp class Solution { public:static bool cmp(const vectorint a, const vectorint b) {return a[0] b[0];}int eraseOverlapIntervals(vectorvectorint intervals) {if (intervals.size() 0) return 0;sort (intervals.begin(), intervals.end(),cmp);int result 0;for (int i 1; i intervals.size(); i) {if (intervals[i][0] intervals[i - 1][1]) {result;intervals[i][1] min(intervals[i][1], intervals[i - 1][1]);}}return result;} };# python class Solution:def eraseOverlapIntervals(self, intervals: List[List[int]]) - int:if len(intervals) 0:return 0intervals.sort(keylambda x:x[0])result 0for i in range(1, len(intervals)):if intervals[i][0] intervals[i - 1][1]:result 1intervals[i][1] min(intervals[i][1], intervals[i - 1][1])return result反思 763.划分字母区间 题目链接 763.划分字母区间 思想 遍历字符串统计每个字符出现的最远位置。 遍历字符串更新字符的最远出现下标如果找到字符的最远出现位置下标和当前的下标相等了就找到了分割点。 题解 // cpp class Solution { public:vectorint partitionLabels(string s) {int hash[27] {0};for (int i 0; i s.size(); i) {hash[s[i] - a] i;}vectorint result;int left 0;int right 0;for (int i 0; i s.size(); i) {right max(right, hash[s[i] - a]); // 不断更新最右端取得遍历过的字母的最远的出现位置if (i right) {result.push_back(right - left 1);left i 1;}}return result;} };# python class Solution:def partitionLabels(self, s: str) - List[int]:hash_ {}for i, ch in enumerate(s):hash_[ch] iresult []left 0right 0for i, ch in enumerate(s):right max(right, hash_[ch])if i right:result.append(right - left 1)left i 1return result 反思
http://www.w-s-a.com/news/79127/

相关文章:

  • 北京免费自己制作网站短视频宣传片制作
  • 怎样进入谷歌网站电子商务网站建设软件选择
  • 建个普通网站多少钱设计师培训多少
  • 建设校园网站的意义视频链接提取下载
  • 天津电子商务网站wordpress安装图片
  • 青岛房产网站东莞网络营销外包公司
  • 网站建设中的页数网上工伤做实网站
  • 给公司做网站这个工作怎么样wordpress不支持中文标签
  • 湖南网站推广优化cc域名做门户网站
  • 网站开发大概多久怎么制做网站
  • 鄂州官方网站食品网站建设需求分析
  • 福州网站建设金森要做好网络营销首先要
  • 中山哪里有好网站建设公司企业培训考试平台下载
  • 域名备案查询 网站备案查询企业网站建设问题研究
  • wordpress无法编辑北京优化网站方法
  • 公司建设一个网站最好的网站建设哪家好
  • 南京市住宅建设总公司网站wordpress 自己写的网页
  • 淄博网站制作企业高端长沙企业网站制作服务报价
  • 网站服务理念中外商贸网站建设
  • 如何自己建立网站中国建设银行网站忘记密码
  • 什么是a站如何在12366网站上做实名认证
  • 斗蟋蟀网站建设谭谭心怎么建设网站
  • 优秀网站开发商郑州网站建设套餐
  • 做伤残鉴约号网站购物网站建设新闻
  • 黄江网站建设公司自己房子做民宿挂什么网站
  • 手游网站做cpc还是cpm广告号宣武郑州阳网站建设
  • vs连接数据库做网站建立网站
  • 电商网站设计图片素材p2p网站建设石家庄
  • 莲塘网站建设如何文字推广一个婚恋网站
  • 医院网站建设工作汇报WordPress不发邮件了