【算法|双指针系列No.4】leetcode11. 盛最多水的容器

ight[i] <= 104 2️⃣算法分析 通过不断地调整较短的边界来寻找可能的最大容量。因为容器的容量受限于较短的边界,所以选择移动较短的边界可以增加容器的高度,有可能得到更大的容量。通过不断缩小指针之间的宽度,直到指针重合,即可得到最大容量。 容器容量:v = s * h,由于我们这里不断移动两个“指针”,所以 s 是不断变小的,那么问题来了,我们要移动哪个指针呢(是向右移动左指针的,还是向左移...

【LeetCode刷题】:仅仅反转字母(双指针+字符串)

a-bC-dEf-ghIj” 输出:“j-Ih-gfE-dCba” 示例 3: 输入:s = “Test1ng-Leet=code-Q!” 输出:“Qedo1ct-eeLg=ntse-T!” 方法:双指针 思路与算法 我们使用 left 指针从左边开始扫描字符串 s,right 指针从右边开始扫描字符串 s如果两个指针都扫描到字母,且 left<right,那么交换 s[left] 和 s[right...

【C++】继承 ⑥ ( 继承中的构造函数和析构函数 | 类型兼容性原则 | 父类指针 指向 子类对象 | 使用 子类对象 为 父类对象 进行初始化 )

文章目录 一、public 公有继承 - 示例分析1、类型兼容性原则2、类型兼容性原则应用场景 二、类型兼容性原则 - 示例分析1、父类指针 指向 子类对象2、使用 子类对象 为 父类对象 进行初始化3、完整代码示例 一、public 公有继承 - 示例分析 1、类型兼容性原则 类型兼容性原则 : C++ 的 " 类型兼容性原则 “ 又称为 ” 赋值兼容性原则 " ; 子类代替父类 : 需要 基类 ...

C++中的智能指针

智能指针是在 C + + 14 C++14 C++14中新引入的,所以在编译的时候最好加入 " − s t d = c + + 14 " "-std=c++14" "−std=c++14"的编译选项。智能指针一共有两种,分别是 u n i q u e _ p t r unique\_ptr unique_ptr和 s h a r e d _ p t r shared\_ptr shared_ptr。...

《C和指针》笔记33:指针数组

除了创建整型数组一样,也可以声明指针数组。 int *api[10]; 为了弄清这个复杂的声明,我们假定它是一个表达式,并对它进行求值。下标引用的优先级高于间接访问,所以在这个表达式中,首先执行下标引用。因此,api是某种类型的数组(它包含的元素个数为10)。在取得一个数组元素之后,随即执行的是间接访问操作。这个表达式不再有其他操作符,所以它的结果是一个整型值。 那么api到底是什么东西?对数组的某...

《C和指针》笔记31:多维数组的数组名、指向多维数组的指针、作为函数参数的多维数组

文章目录 1. 指向多维数组的数组名2. 指向多维数组的指针3. 作为函数参数的多维数组 1. 指向多维数组的数组名 我们知道一维数组名的值是一个指针常量,它的类型是“指向元素类型的指针”,它指向数组的第1个元素。那么多维数组的数组名代表什么呢? 其实也差不多简单。唯一的区别是多维数组第1维的元素实际上是另一个数组。例如,下面这个声明: int matrix[3][10]; matrix数组可以看作...

C语言结构体指针学习

结构体变量存放内存中,也有起始地址,定义一个变量来存放这个地址,那这个变量就是结构体指针; typedef struct mydata{ int a1; int a2; int a3;}mydata; void CJgtzzView::OnDraw(CDC* pDC){ CJgtzzDoc* pDoc = GetDocument(); ASSERT_VALID(pDoc); // TODO: ad...

《C和指针》笔记30:函数声明数组参数、数组初始化方式和字符数组的初始化

2.2 字符数组的初始化 1. 函数声明数组参数 下面两个函数原型是一样的: int strlen( char *string );int strlen( char string[] ); 答案是指针。因为实参实际上是个指针,而不是数组。同样,表达式sizeof string的值是指向字符的指针的长度,而不是数组的长度。 因为函数并不为数组参数分配内存空间。形参只是一个指针,它指向的是已经在其他地...

c++ 常量 常指针 常函数 常对象

后不能再修改其值。常量命名通常使用全大写形式,并采用下划线分隔单词(例如MAX_SIZE)。使用常量时应该考虑其作用域和生命周期,确保其在所需范围内有效。常量可以用于各种数据类型,包括基本类型、对象和指针。 常量在代码中起到了提高可读性、安全性和性能的作用,并且可以约束参数类型。合理使用常量可以使程序更加健壮和可维护。 2. 常指针 参考 c++ 常量指针指针常量 常指针(const pointer...

【C++】C++ 类中的 this 指针用法 ③ ( 全局函数 与 成员函数 相互转化 | 有参构造函数设置默认参数值 | 返回匿名对象与返回引用 )

文章目录 一、全局函数 与 成员函数 相互转化1、成员函数转为全局函数 - 多了一个参数2、全局函数转为成员函数 - 通过 this 指针隐藏操作数 二、有参构造函数设置默认参数值三、返回匿名对象与返回引用四、完整代码示例 一、全局函数 与 成员函数 相互转化 1、成员函数转为全局函数 - 多了一个参数 C++ 编译器 , 在编译阶段会将 C++ 类的 成员函数 转为 全局函数 , 转换时 , 会 ...
© 2024 LMLPHP 关于我们 联系我们 友情链接 耗时0.022263(s)
2024-04-26 14:25:05 1714112705