结构数组新发现之直接初始化《leetcode-合并区间》
leetcode有时候会要求一些奇怪(陌生)的数据形式,刷题因为数据形式卡住了真的很不好...
合并区间里定义了一个Interval的结构数组
struct Interval { int start; int end; Interval() : start(), end() {} Interval(int s, int e) : start(s), end(e) {} };
又根据结构数组创建了vector<Interval> intervals。我就在想,怎么初始化这个intervals。
vector<Interval> intervals; Interval int1(,); intervals.push_back(int1); Interval int2(,); intervals.push_back(int2);
其实就是利用结构数组里的定义来,这样初始化真的很方便呐,也不用去特意申请空间。
解题思路:
先根据start排序,再一一合并
#include <iostream> #include <stdlib.h> #include <stdio.h> #include <vector> using namespace std; typedef struct Interval Int; struct Interval { int start; int end; Interval() : start(), end() {} Interval(int s, int e) : start(s), end(e) {} }; class Solution { public: vector<Interval> merge(vector<Interval>& intervals) { int n = intervals.size(); ) return intervals; int j; Interval temp; Interval temp0; ; ;i<n;i++){ temp = intervals[i]; && temp.start<intervals[j-].start;j--){ intervals[j].start = intervals[j-].start; intervals[j].end = intervals[j-].end; } intervals[j].start = temp.start; intervals[j].end = temp.end; } vector<Interval> outcome; outcome.push_back(intervals[]); ;i<n;i++){ if(intervals[i].start <= outcome.back().end){ outcome.back().end = outcome.back().end > intervals[i].end ? outcome.back().end:intervals[i].end; } else{ outcome.push_back(intervals[i]); } } return outcome; } }; int main(){ vector<Interval> intervals; Interval int1(,); intervals.push_back(int1); Interval int2(,); intervals.push_back(int2); // Interval int3(8,10); intervals.push_back(int3); // Interval int4(15,18); intervals.push_back(int4); Solution S; vector<Interval> outCome = S.merge(intervals); ;i<outCome.size();i++){ int1 = outCome[i]; printf("%d %d\n", int1.start, int1.end); } ; }
结构数组新发现之直接初始化《leetcode-合并区间》的更多相关文章
- leetcode合并区间
合并区间 给出一个区间的集合,请合并所有重叠的区间. 示例 1: 输入: [[1,3],[2,6],[8,10],[15,18]] 输出: [[1,6],[8,10],[15,18]] 解释: ...
- leetcode 合并区间
使用最简单的排序方法: /** * Definition for an interval. * public class Interval { * int start; * int end; * In ...
- 【LeetCode】数组--合并区间(56)
写在前面 老粉丝可能知道现阶段的LeetCode刷题将按照某一个特定的专题进行,之前的[贪心算法]已经结束,虽然只有三个题却包含了简单,中等,困难这三个维度,今天介绍的是第二个专题[数组] 数组( ...
- [Go] 复合类型(数组、切片、字典、结构体)变量的 初始化 及 注意事项
Go变量 初始化 对 复合类型(数组.切片.字典.结构体)变量的初始化是,有一些语法限制: 1.初始化表达式必须包含类型标签: 2.左花括号必须在类型尾部,不能另起一行: 3.多个成员初始值以逗号分隔 ...
- [LeetCode] Merge Intervals 合并区间
Given a collection of intervals, merge all overlapping intervals. For example, Given [1,3],[2,6],[8, ...
- LeetCode(56):合并区间
Medium! 题目描述: 给出一个区间的集合,请合并所有重叠的区间. 示例 1: 输入: [[1,3],[2,6],[8,10],[15,18]] 输出: [[1,6],[8,10],[15,18] ...
- [C语言]贪吃蛇_结构数组实现
一.设计思路 蛇身本质上就是个结构数组,数组里存储了坐标x.y的值,再通过一个循环把它打印出来,蛇的移动则是不断地刷新重新打印.所以撞墙.咬到自己只是数组x.y值的简单比较. 二.用上的知识点 结构数 ...
- MATLAB中的结构数组
MATLAB中的结构数组 结构数组: 结构是包含一组记录的数据类型,而记录则是存储在相应的字段中.结构的字段可以是任意一种MATLAB数据类型的变量或者对象.结构类型的变量也可以是一维的.二维的或多维 ...
- C 语言字符数组的定义与初始化
1.字符数组的定义与初始化字符数组的初始化,最容易理解的方式就是逐个字符赋给数组中各元素.char str[10]={ 'I',' ','a','m',' ',‘h’,'a','p','p','y'} ...
随机推荐
- linux查看IP
1:输入 ifconfig,出现如下信息,找到eno16777736(网卡ip信息的配置文件名) 2:输入 cd /etc/sysconfig/network-scripts 找到网卡ip信息的配置文 ...
- Hadoop记录-日常运维操作
1.Active NameNode hang死,未自动切换 #登录当前hang死 Active namenode主机,停止Namenode,触发自动切换.hadoop-daemon.sh stop n ...
- HDU 6374(拼三角形 **)
题意是在给定的线段长中挑选出能拼成三角形的最长的三条边,输出三角形的周长.先对所有边排序,从大到小,满足两较短边之和大于第三边就输出,若从未输出过就输出 -1 #include <iostrea ...
- 关于Ant脚本
在开发中,一个项目要经历单元测试l,集成测试,系统测试,测试过程中可能要不断修改代码,Ant脚本,通过一个xml文件,封装一系列繁琐又常用的操作,通过Ant指令执行xml脚本来批处理创建删除任务,编译 ...
- IO流之FileUtils工具类的使用
IO流之FileUtils工具类的使用: 使用apache的commons-io包下的FileUtils,我筛选了一些常用方法:
- python要点
1.数据类型 字符串: ''或""表示单行,写三对符合表示多行, r'这种写法转义符不生效' 布尔值:True, False 空值: None 类型转换 print ), ), b ...
- 前端基础之JQuery - day15
写在前面 上课第15天,打卡: 张国臂掖,以通西域: ########### # 课上简书 # ########## http://jquery.cuishifeng.cn/index.html JQ ...
- SpringBoot系列: 理解 Spring 的依赖注入(一)
==============================Spring 的依赖注入==============================对于 Spring 程序, Spring 框架为我们提供 ...
- Xampp PHPStorm XDebug配置
(1)https://xdebug.org/download.php 下载当前Xampp对应的XDebug版本. (2)将该dll放入C:\xampp\php\ext (3)修改Control Pan ...
- HttpService
// // Source code recreated from a .class file by IntelliJ IDEA // (powered by Fernflower decompiler ...