LeetCode 251. 展开二维向量
文章目录
- 1. 题目
- 2. 解题
1. 题目
请设计并实现一个能够展开二维向量的迭代器。该迭代器需要支持 next 和 hasNext 两种操作。、
示例:
Vector2D iterator = new Vector2D([[1,2],[3],[4]]);iterator.next(); // 返回 1
iterator.next(); // 返回 2
iterator.next(); // 返回 3
iterator.hasNext(); // 返回 true
iterator.hasNext(); // 返回 true
iterator.next(); // 返回 4
iterator.hasNext(); // 返回 false
注意:
- 请记得 重置 在 Vector2D 中声明的类变量(静态变量),因为类变量会 在多个测试用例中保持不变,影响判题准确。请 查阅 这里。
- 你可以假定 next() 的调用总是合法的,即当 next() 被调用时,二维向量总是存在至少一个后续元素。
来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/flatten-2d-vector
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
2. 解题
class Vector2D {vector<vector<int>> arr;int r = 0, c = 0, m;
public:Vector2D(vector<vector<int>>& v) {arr = v;m = arr.size();}int next() {while(c == arr[r].size())//跳过没有剩余元素的行{r++;c = 0;}return arr[r][c++];}bool hasNext() {while(r < m && c == arr[r].size()){ //跳过没有剩余元素的行r++;c = 0;}return r < m-1 || (r == m-1 && c < arr[m-1].size());}
};
72 ms 21.9 MB
我的CSDN博客地址 https://michael.blog.csdn.net/
长按或扫码关注我的公众号(Michael阿明),一起加油、一起学习进步!
LeetCode 251. 展开二维向量相关推荐
- python二维向量运算模拟_python二维向量运算_[VB.NET][C#]二维向量的基本运算
前言 在数学中,几何向量是指具有大小和方向的几何对象. 在编程中,向量有着广泛的应用,其作用在图形编程和游戏物理引擎方面尤为突出. 第一节 构造函数 通过创建一个二维向量的类(或结构体),实现向量的表 ...
- 从二维向量跟虚数的区别到欧拉公式,复指数函数
正如我们所知道的,二维向量和虚数都可以写为[a,b]这样子的形式,在平面坐标和复平面都可以都有一个点与之对 应,他们之间是一样的吗? 二维向量的两个数是完全独立变量,两者之间没有什么关系,向量的含义比 ...
- OpenCV展开二维相位图
OpenCV展开二维相位图 展开二维相位图 目标 代码 解释 展开二维相位图 目标 在本教程中,您将学习如何使用相位展开模块来展开二维相位图 代码 #include <opencv2/imgpr ...
- uda 3.C++二维向量
二维向量 接下来,你将使用向量来存储矩阵.就像 Python 使用列表列表来存储矩阵一样,C++ 使用的是向量的向量.用于声明二维向量的语法有点复杂. 假设你正在使用 Python,并且想存储一个 3 ...
- LeetCode 240. 搜索二维矩阵 II(二分查找 分治)
文章目录 1. 题目 2. 解题 2.1 从左下角或者右上角开始搜索 2.2 分治算法 1. 题目 编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target.该矩阵具有以 ...
- C++:二维数组和二维向量的长度
对于一个二维数组: int mm[3][5] = { { 1,2,3,4,5 },{ 5,6,7,8,9 },{ 9,10,11,12,13 } }; int toatlnums = sizeof(m ...
- 用vector实现二维向量
如果一个向量的每一个元素是一个向量,则称为二维向量,例如 [cpp] view plain copy vector<vector<int> >vv(3, vector< ...
- c++中二维数组与二维向量的长度
对于一个二维数组: int mm[3][5] = { { 1,2,3,4,5 },{ 5,6,7,8,9 },{ 9,10,11,12,13 } }; int toatlnums = sizeof(m ...
- Python 编程训练2:二维向量
目标 定义一个 Python 类名为 V2,用于表示二维向量,支持下列向量运算: 由两个实数创建一个二维向量:如:v = V2(1.1, 2.2) 将一个向量转换为字符串形式(使用__str__方法) ...
最新文章
- Go的日志模块glog调研笔记
- FL2440移植LINUX-3.4.2 -- 按键驱动和触摸屏驱动移植
- 理解Bias(偏差),Error(误差),和Variance(方差)的区别和联系?
- 初涉c#设计模式-Iterator Pattern
- 基础知识—数据类型-常量及符号
- GCC帧指针的开启与关闭以及反汇编测试
- 金九银十,年轻人跳槽时,尽量不要选择这三类得不偿失的公司
- 专题:CentOS社区企业操作系统
- Windows 下 Redis 服务无法启动,错误 1067 进程意外终止解决方案
- Referrer Policy 介绍
- 下载mp4v2代码的链接
- 测试环境搭建 openwebmail+花生壳(linux客户端)
- html5 gif 只播放一次,使用JS和canvas实现gif动图的停止和播放代码
- java poi 导出excel设置数据有效性
- 为什么软件开发周期总是预估的2~3倍?
- android开发股票数据接口,股票数据接口-股票数据接口api
- 网页保存PDF 保留文字 删除页面 裁剪页面 删除不需要的内容
- 各串口设备节点/dev/tty* 的区别
- 【减肥】个人科学减肥大致原理记录
- A-Level真题每期一练(11)