旅游网站建设分析 需求,wordpress 运费模板下载,销售管理系统介绍,长春电商网站建设公司排名56. 合并区间
class Solution {
public:vectorvectorint merge(vectorvectorint intervals) {//先按照每个区间的左元素排序#xff0c;这样每个区间的左边界就固定了#xff0c;所以之后考虑相邻的//区间是否是相交的就行 类似与栈的…56. 合并区间
class Solution {
public:vectorvectorint merge(vectorvectorint intervals) {//先按照每个区间的左元素排序这样每个区间的左边界就固定了所以之后考虑相邻的//区间是否是相交的就行 类似与栈的操作//先放进栈一个区间第一个区间的左边界一定是整个大区间的最左边界//这个点是固定的 不用考虑 然后考虑每两个相邻的区间 //如果第一个区间的右边界大于第二个区间的左边界就说明这两个区间是相交的//要合并区间 左边界取第一个区间的左边界 右边界取两个区间右边界的最大值//放入ans数组 除第一次ans为空的情况直接插入第一个区间 //之后每次比较的两个区间就是ans.back()和intervals数组中最左边没有考虑的区间sort(intervals.begin(),intervals.end());vectorvectorint ans;for(auto it:intervals){if(!ans.empty()it[0]ans.back()[1]){int l ans.back()[0];int r max(it[1],ans.back()[1]);ans.pop_back();ans.push_back({l,r});}else{ans.push_back({it[0],it[1]});}}return ans;}
};
C和C的区别 头文件 ● C语言的头文件结尾有.h ● C的头文件没有.h ● C中使用C的头文件可以把.h去掉 在前面补一个c 比如math.h和cmath 前缀c和后缀.h 使用c开头的头文件是为了标明这是C版本的C语言标准库这些库函数和宏定义都是在std命名空间里的提供了更好的兼容性和类型安全性。而.h的头文件依然可以在C中直接使用并且这些函数和宏定义是直接可以在全局作用域中使用的不属于任何的命名空间 C语言是过程式编程语言C是面向对象的编程语言兼顾过程式编程 C相对C语言增强了类型检查结构体允许定义函数了类似于class访问权限默认是public支持了类、对象、继承、多态、封装、抽象、构造函数、析构函数、new、delete、引用、模版、STL容器、算法库、迭代器、命名空间、默认函数参数、函数重载、运算符重载、异常处理、多线程支持。 布尔、整型、浮点、指针类型和0做比较 bool 与 0 比较时布尔值会保持自身语义不会出现精度或隐式转换问题。直接使用布尔变量进行条件判断更自然如 if (b1) 或 if (!b2)。 整型 整型与 0 比较是非常常见的用法没有浮点型或指针类型的潜在问题。对于非零值的判断可以直接写为 if (a)而无需显式比较 a ! 0。 浮点类型float, double 浮点类型可以直接与 0 比较但由于 浮点精度误差 的存在直接比较结果可能会不准确。通常不推荐直接与 0 使用 或 ! 进行比较而是使用一个小的容差值epsilon来进行近似比较。 指针类型与 0 比较 在 C 中0 是空指针常量可用来表示一个空指针nullptr 在 C11 中引入之前常用 0 表示空指针。指针与 0 比较用于判断指针是否为空指针。 nullptr_t类型 唯一的值std::nullptr_t 类型的唯一值是 nullptr(右值)。隐式转换std::nullptr_t 类型的对象可以隐式转换为任意指针类型如 int*、char*、void* 等但不能转换为非指针类型如 int 或 float。语义明确它明确表示 空指针 的含义而不是整数 0 或其他类型。 malloc、calloc、realloc的区别 #include stdlib.h
#include stdio.hint main() {// malloc 示例int* malloc_arr (int*)malloc(5 * sizeof(int)); // 分配未初始化内存if (malloc_arr) {for (int i 0; i 5; i) malloc_arr[i] i;free(malloc_arr);}// calloc 示例int* calloc_arr (int*)calloc(5, sizeof(int)); // 分配并初始化为 0if (calloc_arr) {for (int i 0; i 5; i) printf(%d , calloc_arr[i]);free(calloc_arr);}// realloc 示例int* realloc_arr (int*)malloc(3 * sizeof(int));if (realloc_arr) {realloc_arr (int*)realloc(realloc_arr, 6 * sizeof(int)); // 调整大小free(realloc_arr);}return 0;
}