描述
设计一个迭代器来实现摊平二维向量的功能
在线评测地址:领扣题库官网
样例1 输入:[[1,2],[3],[4,5,6]] 输出:[1,2,3,4,5,6]
样例2 输入:[[7,9],[5]] 输出:[7,9,5]
解题思路
使用2个栈的算法解决Flatten 2D Vector 课堂所讲解的算法
源代码
public class Vector2D implements Iterator Integer { Stack List Integer stack = new Stack (); Stack Integer stackj; void pushListListToStack(List List Integer vec2d) { Stack List Integer temp = new Stack (); for (List Integer nested : vec2d) { temp.push(nested); while (!temp.isEmpty()) { stack.push(temp.pop()); void pushListToStack(List Integer vec) { Stack Integer temp = new Stack (); for (Integer nested : vec) { temp.push(nested); while (!temp.isEmpty()) { stackj.push(temp.pop()); public Vector2D(List List Integer vec2d) { pushListListToStack(vec2d); // Initialize your data structure here stackj = new Stack (); public Integer next() { // Write your code here if(!hasNext()) { return null; return stackj.pop(); public boolean hasNext() { // 准备下一个元素 // Write your code here while (stackj.isEmpty() !stack.isEmpty()) pushListToStack(stack.pop()); return !stackj.isEmpty(); public void remove() {} }
更多题解参考:九章官网solution
首先,大数据是一个比较典型的交叉学科,选择大数据专业需要学习三大块内容,包...
据外媒消息,海外一家电话服务商Visible Service LLC以及收购了品牌 域名 Visibl...
6月推广满足任务值,除常规返佣奖励外,推广者可获额外现金红包奖励,最高返佣比...
本文转载自微信公众号「飞天小牛肉」,作者飞天小牛肉。转载本文请联系飞天小牛...
重要提示: 1. 2021年6月9日安保培训增值税发票开具信息采集: https://cloud.te...
背景 打散是在推荐、广告、搜索系统的结果基础上,提升用户视觉体验的一种处理。...
来源 | 阿里巴巴云原生公众号 ? 它来了!它来了! 2021 年度阿里云开发者大会终...
不懂计算机的她,为何成为了计算机科研界顶流? 大家好,我是鱼皮,今天带大家认...
公司简介 我们是北京墨迹风云科技股份有限公司,于2010年成立,是一家以“做卓越...
2月份GitHub上最热门的开源项目排行已经出炉啦,这个月和币圈相关的开源项目上榜...