当前位置: 首页 > news >正文

leetcode刷题

1、stack栈相关

top():返回一个栈顶元素的引用,类型为 T&。如果栈为空,返回值未定义。
push(const T& obj):可以将对象副本压入栈顶。这是通过调用底层容器的 push_back() 函数完成的。
push(T&& obj):以移动对象的方式将对象压入栈顶。这是通过调用底层容器的有右值引用参数的 push_back() 函数完成的。
pop():弹出栈顶元素。
size():返回栈中元素的个数。
empty():在栈中没有元素的情况下返回 true。
emplace():用传入的参数调用构造函数,在栈顶生成对象。
swap(stack & other_stack):将当前栈中的元素和参数中的元素交换。参数所包含元素的类型必须和当前栈的相同。对于 stack 对象有一个特例化的全局函数 swap() 可以使用。

std::stack<std::string> words;
stack<int> S;	//定义一个存储整数类型的栈

2、leetcode138题hashmap哈希映射

class Solution {
public:Node* copyRandomList(Node* head) {if(head == nullptr) return nullptr;Node* cur = head;unordered_map<Node*, Node*> map;// 3. 复制各节点,并建立 “原节点 -> 新节点” 的 Map 映射while(cur != nullptr) {map[cur] = new Node(cur->val);cur = cur->next;}cur = head;// 4. 构建新链表的 next 和 random 指向while(cur != nullptr) {map[cur]->next = map[cur->next];map[cur]->random = map[cur->random];cur = cur->next;}// 5. 返回新链表的头节点return map[head];}
};
http://www.lryc.cn/news/4838.html

相关文章:

  • 移动设备安全管理基础指南
  • 【Java|多线程与高并发】 使用Thread 类创建线程的5种方法如何查看程序中的线程
  • 零基础学MySQL(五)-- 详细讲解数据库中的常用函数
  • 第4章 流程控制-if-else,Switch,For循环(循环守卫,循环步长,倒叙打印),While循环,多重循环...
  • 2.4G-WiFi连接路由器过程
  • 3. SpringMVC Rest 风格
  • Python3简介
  • 如何学习PMP?
  • 【DSP视频教程】第11期:插补算法,曲线拟合丝滑顺畅,统计函数和基础函数加速实现,汇集SIMD,饱和和MAC乘累加应用实战(2023-02-12)
  • 分类模型评估:混淆矩阵、准确率、召回率、ROC
  • 算法 ——世界 一
  • 2023年3月AMA-CDGA/CDGP数据治理认证考试这些城市可以报名
  • Java变量和数据类型,超详细整理,适合新手入门
  • Echarts 设置折线图拐点的颜色,边框等样式,hover时改变颜色
  • 做 SQL 性能优化真是让人干瞪眼
  • SpringBoot(3)之包结构
  • test2
  • LoadRunner安装教程
  • VHDL语言基础-Testbech
  • 机器学习基础总结
  • linux的三权分立设计思路和用户创建(安全管理员、系统管理员和审计管理员)
  • revit中如何创建有坡度的排水沟及基坑?
  • Web自动化测试——selenium篇(一)
  • 认识 CSS pointer-events 属性
  • 【java】springboot和springcloud区别
  • ​网易游戏实时 HTAP 计费风控平台建设
  • vue组件
  • 让mybatis-plus支持null字段全量更新
  • MASA Stack 1.0 发布会讲稿——生态篇
  • 华为OD机试 - 火星文计算2(JS)| 真题+思路++考点+代码