【【LeetCode】224. 基本计算器 Basic Calculator II(C++)】教程文章相关的互联网学习教程文章

【leetcode 双指针 C++】11. Container With Most Water【代码】【图】

11. Container With Most Waterclass Solution { public:int maxArea(vector<int>& height) {int ans = 0;int left = 0, right = height.size() - 1;while(left < right) {ans = max(ans, min(height[left], height[right]) * (right - left));if(height[left] > height[right]) right--;else left++;}return ans;} };

Leetcode 117. 填充每个节点的下一个右侧节点指针 II 解题思路及C++实现

方法一:层序遍历 解题思路: 和第116题一模一样,其实,用队列queue更简单一些,不用将顺序倒来倒去。通过使用队列的长度信息queue.size(),可以只需要一个队列就能做到层序遍历。/* // Definition for a Node. class Node { public:int val;Node* left;Node* right;Node* next;Node() {}Node(int _val, Node* _left, Node* _right, Node* _next) {val = _val;left = _left;right = _right;next = _next;} }; */ class Solution {...

Leetcode 第一题两数之和用C/C++实现【代码】

1.两数之和 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 的那 两个 整数,并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。 你可以按任意顺序返回答案。示例 1: 输入:nums = [2,7,11,15], target = 9 输出:[0,1] 解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。 示例 2: 输入:nums = [3,2,4], target = 6 输出:[1,2] 示例...

leetcode之删除有序数组中的重复项(C++)【代码】【图】

参考链接 https://leetcode-cn.com/problems/remove-duplicates-from-sorted-array/ 题目描述 给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。 不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。 解题思路 使用双指针,一个指针锁定要被替换的位置,另一个指针寻找不同的元素,放在第一个指针右边的位置。 代码 class Solutio...

LeetCode #84. 柱状图中最大的矩形 题解 C/C++【代码】

//暴力 枚举宽 超时 /* 如果我们枚举「宽」,我们可以使用两重循环枚举矩形的左右边界以固定宽度 w, 此时矩形的高度 h,就是所有包含在内的柱子的「最小高度」,对应的面积为 w * h。 */ class Solution1 { public:int largestRectangleArea(vector<int>& heights) {int len = heights.size();int ans = 0;int minHeight;for(int i = 0;i<len;++i) {//枚举左边界minHeight = INT_MAX;for(int j = i;j<len;++j) {//枚举右边界minH...

leetcode笔记总结——(5)简化路径(python和C++实现)【代码】【图】

目录 1、题目描述:2、思路:3、代码实现:(1)python代码:(2)C++代码: 4、总结:参考文献:1、题目描述:2、思路: 首先根据’/将path进行split,用res保存简化后需要的文件名,对于每个元素进行分类讨论: 如果是 . 或者 空字符串 则跳过;如果是.. 说明需要返回上一级,即弹出一个文件名,但是这里有一个细节需要注意,只有res非空的时候才能弹出,否则对于测试用例 /../不能通过,因为此时的res为空;如果是普通的文件名,则...

leetcode(力扣)第二十八题:实现 strStr()_C++【代码】

class Solution { public:void GetNextval(string t,int nextval[]){int j=0,k=-1;nextval[0]=-1;while (j<t.length()-1){if (k==-1 || t[j]==t[k]) { if(t[++j]!=t[++k]) nextval[j]=k;else nextval[j]=nextval[k];}else k=nextval[k]; }}int KMPIndex1(string s,string t){int nextval[t.length()],i=0,j=0;GetNextval(t,nextval);while (i<s.length()&&j<int(t.length())){if (j==-1||s[i]==t[j]){ ++i;++j; }else j=n...

leetcode(力扣)第二十四题:两两交换链表中的节点_C++【代码】

class Solution { public:ListNode* swapPairs(ListNode* head) {if(head==nullptr||head->next==nullptr) return head;ListNode *l1=head,*l2=head->next;l1->next=l2->next;l2->next=l1;head=l2;while(1){if(l1->next)l2=l1->next;else break;if(l2->next)l2=l2->next;else break;(l1->next)->next=l2->next;l2->next=l1->next;l1->next=l2;l1=l2->next;}return head;} };第二次one-take,诶,诶嘿(喜 不过莫得意思。

[LeetCode]丑数 II&C++中priority_queue和unordered_set的使用

[LeetCode]丑数 II&C++中priority_queue和unordered_set的使用 考虑到现实因素,LeetCode每日一题不再每天都写题解了(甚至有可能

leetcode(力扣)第十五题:三数之和_C++【代码】

class Solution { public:vector<vector<int>> threeSum(vector<int>& nums) {unordered_map<int, int> nums_map;//哈希表int si=nums.size(),ptr1=0,ptr2=si-1,t=0;//前后指针和第三个数vector<vector<int>> ans;//答案if(si<3) return ans;sort(nums.begin(), nums.end());//排序for(int i=0;i<=ptr2;i++){//做哈希表auto it=nums_map.find(nums[i]);if(it!=nums_map.end()) ++(it->second);else nums_map[nums[i]]=1;}while(ptr...

C++/Python描述 LeetCode 面试题 17.21. 直方图的水量【代码】【图】

C++/Python描述 LeetCode 面试题 17.21. 直方图的水量??大家好,我叫亓官劼(q guān ji ),在GitHub & CSDN中记录学习的点滴历程,时光荏苒,未来可期,加油~博主目前仅在GitHub & CSDN中写博客,唯一博客更新的地址为:亓官劼的博客 ,近期将逐渐同步刷题相关记录到GitHub:Algorithmic-learning-records,大多是本人的刷题记录,如果转载请附上原文地址,谢谢。由于学习工作的需要,算法刷题将会逐渐由C++向Python3过度,正在过...

Leetcode刷题笔记21:202009(最终计划使用C++ | CCF CSP竞赛具体备赛计划)【代码】

第十九天 2021-3-27备战CCFCSP 刷题模块:CCF 202009 最终计划 AcWing 算法基础课程 每日一个视频AcWing 算法基础课程 每日多个算法模板CCF CSP 每日5道比赛真题 比赛技巧:如何改变输入输出流 #include <stdio.h>int main(){freopen("in.txt","r",stdin);freopen("out.txt","w",stdout);int x,y;scanf("%d%d",&x,&y);printf("%d %d",x,y); } CCF CSP:202009-1 枚举法,时间复杂度O(n) #include<iostream>using namespace std;con...

leetcode(力扣)第五题:最长回文子串_C++【代码】

方法一:动态规划 class Solution { public:string longestPalindrome(string s) {int n=s.length();string ans="";bool dp[n][n];//动态规划表for(int i=n-1;i>-1;--i){for(int j=i;j<n;++j){//i是回文串头,j是尾if (j==i) //单字符是回文串dp[i][i]=true;else if(j==i+1) //双字符判断是否相等dp[i][i+1]=(s[i]==s[i+1]);else//多字符判断头尾是否相等以及后一位字符长度小2的串是否为回文串dp[i][j]=(dp[i+1][j-1]&&(s[i]==s[j...

(c++)leetcode.200——岛屿数量【代码】

原题地址:https://leetcode-cn.com/problems/number-of-islands/ 给你一个由 ‘1’(陆地)和 ‘0’(水)组成的的二维网格,请你计算网格中岛屿的数量。 岛屿总是被水包围,并且每座岛屿只能由水平方向和/或竖直方向上相邻的陆地连接形成。 此外,你可以假设该网格的四条边均被水包围。 示例: 输入:grid = [ [“1”,“1”,“1”,“1”,“0”], [“1”,“1”,“0”,“1”,“0”], [“1”,“1”,“0”,“0”,“0”], [“0”,“0”...

【LeetCode】341. 扁平化嵌套列表迭代器 Flatten Nested List Iterator(C++)【代码】

目录 题目描述题目大意递归复杂度分析题目来源:https://leetcode-cn.com/problems/flatten-nested-list-iterator 题目描述 给你一个嵌套的整型列表。请你设计一个迭代器,使其能够遍历这个整型列表中的所有整数。 列表中的每一项或者为一个整数,或者是另一个列表。其中列表的元素也可能是整数或是其他列表。示例 1: 输入: [[1,1],2,[1,1]] 输出: [1,1,2,1,1] 解释: 通过重复调用 next 直到 hasNext 返回 false,next 返回的元素...