随想录 数列 最大值 优先级
day11 代码随想录算法训练营 1047. 删除字符串中的所有相邻重复项
题目:1047. 删除字符串中的所有相邻重复项 我的感悟: 做过的题,还是有印象的。 本身也不难,独立写出来了。 理解难点: 代码难点: 代码示例: class Solution: def removeDuplicates(self, s: str) -> str: stack = [] for i ......
day11 代码随想录算法训练营 20. 有效的括号
题目:20. 有效的括号 我的感悟: 脑回路清奇 理解难点: 遇到左括号存对应的右括号 3中情况, 1.左括号多了 2.右括号多了 3.左右括号不匹配 剪枝:奇数可以直接剪枝 注意为空的判断,防止报错 代码难点: 存3种情况 23情况要返回False 其他直接pop 最后判断stack栈为不为空,来 ......
第十节:高阶队列详解(双端队列、优先级队列)
一. 二. 三. ! 作 者 : Yaopengfei(姚鹏飞) 博客地址 : http://www.cnblogs.com/yaopengfei/ 声 明1 : 如有错误,欢迎讨论,请勿谩骂^_^。 声 明2 : 原创博客请在转载时保留原文链接或在文章开头加上本人博客地址,否则保留追究法律责任的权 ......
loj 数列分块
1 操作涉及区间加法,单点查值。 对于每个块维护一个 \(ad\) 数组表示这个块每次修改增加的值的和,在修改 \(l\) ~ \(r\) 区间时,如果 \(l,r\) 在同一个块,那直接暴力修改。否则对于 \(l\) ~ \(R_{bel_l}\) 和 \(L_{bel_r}\) ~ \(r\) ......
P3228 [HNOI2013] 数列
题意 给定 \(n\)、\(m\)、\(k\) 和 \(p\),要求在 \(n\) 中取 \(k\) 个数,并且相邻的两个数字差小于等于 \(m\),最后对 \(p\) 取模。 思路 如果直接考虑求出这个数列的话,过程相对麻烦,实现起来比较困难,所以不妨换一种思路。 注意题目中有一个非常特殊的数据: ......
数列分块入门1-9
分块1 #include <bits/stdc++.h> using namespace std; typedef long long LL; const int maxn = 50003; int n, opt, a, b, c, cnt; int w[maxn], in[maxn], addta ......
【算法设计与分析】(一)序言:最大子数组、归纳法正确性证明、渐进记号。苏大计科院研一期末复习笔记
写在前面 首先,本人很菜。 其次,本文只也许够应付考试,个人使用。而且其实就是ppt内容只是我自己喜欢这样整理。虽然全力理解内容且认真书写但也可能存在错误,如有发现麻烦指正,谢谢🌹 最后,因为不知道考试怎么考,本人的复习方式是照着目录讲一遍自己的理解+写伪代码(如果来的及会再做一个综合纯享版),再 ......
运算符优先级
运算符优先级(详细的点击超链接) 同一优先级的运算符,运算次序由结合方向所决定。 简单记就是:! > 算术运算符 > 关系运算符 > && > || > 赋值运算符 ......
代码随想录算法训练营第二十五天 | 216.组合总和III,17.电话号码的字母组合
一、216.组合总和III 题目链接: LeetCode 216.组合总和III 学习前: 思路: 返回类型和参数: void fun(int n, int k, int start) 终止条件: int len = list.size(); if(len==k){ if(n==0 ){ List< ......
P3386 【模板】二分图最大匹配
include <bits/stdc++.h> using namespace std; struct node { int next,to; }e[100010]; int top,ans,visit[100010],match[100010],head[100010]; void merge(i ......
向上找最小值 和 向下找最大值
__int128 li = -2e18,ri = 2e18; //向上找最小值 while(li<ri) { __int128 mid = (li+ri-1)/2; if(a+mid*m>=l) ri=mid; else li = mid+1; } __int128 lj = -2e18,rj = ......
代码随想录day11 有效括号 删除字符串中的所有相邻重复项 逆波兰表达式求值
有效括号 思路出来代码比较简单 左半括号出现就压右半进栈 这样比左右括号直接压进去 做的比较会少一些 栈为空但是还有符号出现或者是右半括号和当前元素对不上 显然为false 剩下的情况就是栈顶和当前元素匹配 pop即可 栈尤其适合做这类匹配类的题目 删除字符串中的所有相邻重复项 消消乐 直接压进栈做 ......
代码随想录算法训练营第二十四天 | 回溯算法理论基础,77. 组合
一、回溯算法理论基础 学习: 1. 基本概念 回溯法是一种搜索方式 回溯的本质是穷举,是递归的副产品,即回溯算法就是递归算法 回溯解决的问题都能理解成树形结构,一般是在集合中递归查找子集。集合的大小构成树的宽度(n叉树),递归的深度构成了树的深度 2. 回溯解决的问题 (1)组合问题:N个数里面按一 ......
代码随想录 day10 栈模拟队列 队列模拟栈
栈模拟队列 大概了解一下思路自己就可以很快写出来了 我们需要第二个辅助栈帮助我们把stackIn的顺序颠倒,这样FILO的栈颠倒后 pop的顺序就和FIFO的队列顺序一致了 大概就是这张图 队列模拟栈 题目要求使用两个队列模拟栈 其实可以只需要一个队列就可以模拟 栈的出栈顺序是最后一个先出栈,那么队 ......
智能视频监控技术在旅游业中如何发挥最大作用,助力旅游业发展
智能分析网关V4中的客流统计算法可以监测旅游景点的游客流量和行为,通过数据分析,提供更准确的游客统计和行为分析,使景区和酒店能够更好地预测和满足游客需求,提高服务质量。 ......
K 个元素的最大和
给你一个下标从 0 开始的整数数组 nums 和一个整数 k 。你需要执行以下操作 恰好 k 次,最大化你的得分: 从 nums 中选择一个元素 m 。 将选中的元素 m 从数组中删除。 将新元素 m + 1 添加到数组中。 你的得分增加 m 。 请你返回执行以上操作恰好 k 次后的最大得分。 示例 ......
day09 代码随想录算法训练营 459. 重复的子字符串
题目:459. 重复的子字符串 我的感悟: 重复两个子串,掐头去尾。 证明的话,不太会。 理解难点: 什么脑袋瓜子想出来的解法?? 代码难点: 总结概括: 代码示例: class Solution: def repeatedSubstringPattern(self, s: str) -> bool ......
DevExpress WPF Windows 10 UI组件,轻松构建触摸优先的业务型应用UX!(二)
DevExpress WPF的Windows 10 UI组件包含了一系列应用导航组件、Toast通知、对话框组件等,能帮助用户轻松开发漂亮的业务型应用程序,并模仿触摸优先的Windows 10 Pro UX。在上文中(点击这里回顾>>)我们为大家介绍了一些磁贴工具栏、导航框架等,本文将继续介绍浮动的 ......
代码随想录算法训练营第二十三天 | 669. 修剪二叉搜索树,108.将有 序数组转换为二叉搜索树,538.把二叉搜索树转换为累加树
一、669. 修剪二叉搜索树 题目链接: LeetCode 669. 修剪二叉搜索树 学习前: 思路: 递归。节点非空时的值与目标区间[low,high]右三种情况 节点值小于low 返回递归调用节点右孩子结果,即它右子树剪枝后的根节点 节点值大于high 返回递归调用节点左孩子结果,即它左子树剪枝 ......
最大的被整除数
1 import java.util.Scanner; 2 3 public class Main { 4 public static void main(String[] args) { 5 // 请在此添加您的代码 6 /********** Begin *********/ 7 Scanner ......
day08 代码随想录算法训练营 卡码网:55.右旋转字符串
题目:卡码网:55.右旋转字符串 我的感悟: python中的切片很厉害。 我感觉go好像也是切片的 理解难点: 没理解为什么是-n 代码难点: 总结概括: 代码示例: n = int(input()) s = input() res = s[-n:] + s[:-n] print(res) 通过截 ......
day08 代码随想录算法训练营 151. 反转字符串中的单词
words = s.split() 题目:151. 反转字符串中的单词 我的感悟: 虽然我自己写出来了,但是又不太确定 理解难点: words = s.split() 切记:这里split是去掉所有的空格。 words = s.split(" ") 如果这样写" "就仅仅去除" "一个空格,这样写不 ......
day08 代码随想录算法训练营 卡尔网54. 替换数字
题目:54. 替换数字 我的感悟: 过于简单,我有点不敢相信 理解难点: 代码难点: 总结概括: 本质要理解这个数字是如何判断的 用ord("0")算出字符0的ASCII码再和9的ASCII码对比 str1 = input() ans = "" for ss in str1: if ord("0") ......
day08 代码随想录算法训练营 541. 反转字符串 II
题目:541. 反转字符串 II 我的感悟: 你别看这题简单,python里面细节很多 理解难点: 字符串转化为列表来算 s[1:99] 只会取到s[1:s.size] 这个range(0,size,k) 是可以取到步长的 或者用另外的思路。 代码难点: 总结概括: 注意[1:999]这里的容错机制 ......
day08 代码随想录算法训练营 344.反转字符串
题目:344. 反转字符串 我的感悟: 以为很难,其实不难。 坚持就是胜利!!!!!!!!! 理解难点: 我以为字符串不能修改,仔细看了题目发现是列表里面套的字符串 双指针,while 互相交互就可以了 代码难点: 总结概括: 代码示例: class Solution: def reverseStr ......
python爬虫算法深度优先遍历_爬虫基础 之深度优先,广度优先策略
1.深度优先递归方式; import re import requests headers = { 'User-Agent':"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrom ......
代码随想录 day08 反转字符串 反转字符串2 替换数字 单词反转顺序 右旋
反转字符串 经典双指针法 头尾交换 反转字符串2 难点在于模拟题目设定的条件 一开始不明白怎么模拟 后来看了一行标准源码 就明白了 设定步长就可以了 然后对迭代器位置进行约束 替换数字 本题为acm模式 也是一道双指针解题 注意这道题需要扩容之后 从后往前填充 免去了从前往后填充时需要移动元素 单词 ......
代码随想录算法训练营第二十二天 | 235. 二叉搜索树的最近公共祖先,701.二叉搜索树中的插入操作,450.删除二叉搜索树中的节点
一、235. 二叉搜索树的最近公共祖先 题目链接: LeetCode 235. 二叉搜索树的最近公共祖先 学习前: 思路: 对于二叉搜索树,root不为空时与p和q的关系有4种,分别对应返回 root<p && root<q 递归调用右孩子 rootp || rootq return root ro ......
[蓝桥杯 2023 国 B] 合并数列
题目描述让两个数组合并为一模一样的,求最小合并次数。 思路把 $a$,$b$ 数组看为 $x$,$y$ 两个队列,用 $ans$ 记录合并了几次,合并时会出现 $3$ 种情况。 1. $x$ 的队首等于 $y$ 的队首,尽然相等,直接删除 $x$ 和 $y$ 的队首。2. $x$ 的队首大于 $y$ ......