其他分享
首页 > 其他分享> > 每日一题#6 HTTP协议及报文组成&LeetCode 435. 无重叠区间【贪心】

每日一题#6 HTTP协议及报文组成&LeetCode 435. 无重叠区间【贪心】

作者:互联网

HTTP协议的主要特点

HTTP报文的组成部分

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=

同理,响应报文

请求示例
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=
以上第一行就是请求行,包含GET方法 / 表示首页  HTTP/1.1 表示HTTP协议版本

后面内容都是请求头,都是key-value键值对

空行在这里没有显示出来,然后对于请求体就是一些数据部分了。

响应示例
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=

第一行是状态行,包含HTTP协议版本,协议状态码200

下面就是响应头了,也是键值对的形式

下面会有一个空行,类似下面这种效果(下面这条分割横线)

LeetCode 435. 无重叠区间【贪心】

 

题目描述

给定多个区间,计算让这些区间互不重叠所需要移除区间的最少个数。起止相连不算重叠。

解题思路

注意 需要根据实际情况判断按区间开头排序还是按区间结尾排序。

AC

 

class Solution {public:    int eraseOverlapIntervals(vector<vector<int>>& intervals) {        if(intervals.empty()) return 0;        int n = intervals.size();        //按照区间结尾从小到大排序        sort(intervals.begin(),intervals.end(),[](vector<int> a,vector<int> b){            return a[1] < b[1];        });        int cnt=0,pre=intervals[0][1];        for(int i=1;i<n;i++){            if(intervals[i][0]<pre) ++cnt;            else pre = intervals[i][1];        }        return cnt;    }};

 

最后,点个“在看” 完成每日打卡任务~  更多笔记可以访问: yangchaoyi.vip

标签:排序,HTTP,请求,intervals,区间,435,LeetCode,结尾
来源: https://blog.51cto.com/100Chocolate/2902190