刷题专题

【算法刷题day55】Leetcode:583. 两个字符串的删除操作、72. 编辑距离

文章目录 Leetcode 583. 两个字符串的删除操作解题思路代码总结 Leetcode 72. 编辑距离解题思路代码总结 草稿图网站 java的Deque Leetcode 583. 两个字符串的删除操作 题目:583. 两个字符串的删除操作 解析:代码随想录解析 解题思路 dp数组的含义是,从word1从0到i-1,word2从0到j-1匹配上最少需要删除

博弈论刷题记录

//不想学新东西了( 肥猫的游戏 #include<bits/stdc++.h>using namespace std;int n;bool check(int x,int y,int z){int pos=0;int m;m=y-x;if(m==1||m==n-1)pos++;m=z-y;if(m==1||m==n-1)pos++;m=z-x;if(m==1||m==n-1)pos+

CSP认证刷题笔记(2)ISBN号码(13年CSP认证第二题)

文章目录 题目描述基本思路 题目描述 每一本正式出版的图书都有一个 ISBN 号码与之对应。ISBN 码包括9位数字、1位识别码和3位分隔符,其规定格式如x-xxx-xxxxx-x,其中符号- 是分隔符(键盘上的减号),最后一位是识别码,例如0-670-82162-4就是一个标准的ISBN码。ISBN 码的首位数字表示书籍的出版语言,例如0代表英语;第一个分隔符 - 之后的三位

力扣刷题笔记(3)无重复字符的最长子串

文章目录 题目描述个人题解解题心得 题目描述 给定一个字符串s,请你找出其中不含有重复字符的最长子串的长度。 个人题解 class Solution {public://之所以使用哈希表集合这种数据结构,是因为其查找某个特定的元素的时间复杂度为常数级别int lengthOfLongestSubstring(string s) {//用于记录当前无重复字符的最长子串中的

LeetCode刷题笔记第1800题:最大升序子数组和

LeetCode刷题笔记第1800题:最大升序子数组和 题目: 想法: 遍历数组的同时记录当前最大升序子数组和,最终返回最大升序子数组和 class Solution:def maxAscendingSum(self, nums: List[int]) -> int:result = 0i = 0n = len(nums)while i < n:s = nums[i]i += 1whi

记一次洛谷刷题让人摸不到头脑的报错——Runtime Error.Received signal 6: Aborted / IOT trap.

报错题目 外星密码 - 洛谷 具体报错信息 Runtime Error.Received signal 6: Aborted / IOT trap. 错误代码 #include <iostream>#include <cstring>using namespace std;string sol() {string s = "";string t = "";char c = '

【算法刷题day53】Leetcode:1143. 最长公共子序列、1035. 不相交的线、53. 最大子数组和

文章目录 Leetcode 1143. 最长公共子序列解题思路代码总结 Leetcode 1035. 不相交的线解题思路代码总结 Leetcode 53. 最大子数组和解题思路代码总结 草稿图网站 java的Deque Leetcode 1143. 最长公共子序列 题目:1143. 最长公共子序列 解析:[代码随想录解析](https://programmercarl.c

刷题之找到字符串所有字母异位词

找到字符串所有字母异位词 滑动窗口。滑动窗口大小为待比较数组的大小。 class Solution {public:vector<int> findAnagrams(string s, string p) {//滑动窗口vector<int>result;if(s.size()<p.size())return result;vector<int>pnum(26,0);//记录p的字母vect

力扣刷题--数组--第五天

昨天做了几道关于双指针求解的算法题,今天继续看相关的题目。 844. 比较含退格的字符串   给定 s 和 t 两个字符串,当它们分别被输入到空白的文本编辑器后,如果两者相等,返回 true 。# 代表退格字符。   注意:如果对空文本输入退格字符,文本继续为空。 示例 1:输入:s = "ab#c", t = "ad#c"输出:true解释:s 和 t 都会变成 "ac"。示例 2:

NSS【web】刷题

[SWPUCTF 2021 新生赛]jicao 类型:PHP、代码审计、RCE 主要知识点:json_decode()函数 json_decode():对JSON字符串解码,转换为php变量 用法: <?php $json = {"ctf":"web","question":18}; ​ var_dump(json_decode($json)); var_dump(json_dec

[牛客网]——C语言刷题day2

答案:B  解析: char *p[10] 是指针数组,数组里存放了10个指针,在64位系统下指针占8个字节,所以sizeof(p) = 10 * 8 = 80. char (*p1)[10]是数组指针,p1是一个指向存放10个char类型的数组的指针,所以sizeof(p1) = 8.   答案:B 解析: scanf不能指定输入精度,可以指定长度。 比如%m.nf是不允许

【js刷题:数据结构链表篇之移除链表元素】

移除链表元素 一、定义链表节点(面试时要自己写)二、题目三、移除头节点1、直接在原链表中操作移除2、设置一个虚拟头结点在再进行删除操作 四、解题代码 一、定义链表节点(面试时要自己写) class ListNode {val;next = null;constructor(value) {this.val = value;this.next = null;}} 二、题目

【算法刷题day52】Leetcode:300. 最长递增子序列、674. 最长连续递增序列、718. 最长重复子数组

文章目录 Leetcode 300. 最长递增子序列解题思路代码总结 Leetcode 674. 最长连续递增序列解题思路代码总结 Leetcode 718. 最长重复子数组解题思路代码总结 草稿图网站 java的Deque Leetcode 300. 最长递增子序列 题目:300. 最长递增子序列 解析:代码随想录解析 解题思路 dp数组的含义是以该元素为结尾的

刷题记录5.10-5.13

文章目录 刷题记录5.10-5.13257.二叉树的所有路径牛客小白月赛93交换数字力扣周赛397---两个字符的排列差力扣周赛397---从魔法师身上吸取的最大能量34.在排序数组中查找元素的第一个和最后一个位置2529.正整数和负整数的最大计数牛客周赛42A.小红战小紫C.小红的素数合并D.小红树上删边 2559统计范围内的元音字符串数2389.和有限的最长子序列 刷题记录5

【刷题】代码随想录算法训练营第三十九天|62、不同路径,63、不同路径II

目录 62、不同路径63、不同路径II 62、不同路径 讲解:https://programmercarl.com/0062.%E4%B8%8D%E5%90%8C%E8%B7%AF%E5%BE%84.html 动态规划经典,不过注意这里的初始化,第一行和第一列都是1,因为只能向右和向下走,因此第一行和第一列所有格点都只有一种方案抵达。 class Solution {

【每日刷题】Day39

【每日刷题】Day39 🥕个人主页:开敲🍉 🔥所属专栏:每日刷题🍍 🌼文章目录🌼 1. 622. 设计循环队列 - 力扣(LeetCode) 2. 387. 字符串中的第一个唯一字符 - 力扣(LeetCode) 3. 2073. 买票需要的时间 - 力扣(LeetCode) 1. 622. 设计循环队列 - 力扣(LeetCode) //思路:顺序表

【刷题】一篇文章搞定“位运算”

只要春天不死,就有迎春的花朵年年岁岁开放,生命讲涅槃,生生不息,并会以另一种形式永存。 – 路遥 《平凡的世界》 (◦′ᆺ‵◦) ♬° ✧❥✧¸.•¨✧♡✧ ℒℴѵℯ ✧♡✧¨•.❥ (◦′ᆺ‵◦) ♬° ✧❥✧¸.•¨✧♡✧ ℒℴѵℯ ✧♡✧¨•.❥ (◦′ᆺ‵◦) ♬° ✧❥✧¸.•¨✧♡✧ ℒℴѵℯ ✧♡✧¨•.❥ 一篇文章搞定“位运算” 1 前言2 位运算3 基础题目4 进

【刷题】代码随想录算法训练营第三十八天|509、斐波那契数,70、爬楼梯,746、使用最小花费爬楼梯

目录 509、斐波那契数70、爬楼梯746、使用最小花费爬楼梯 509、斐波那契数 讲解:https://programmercarl.com/0509.%E6%96%90%E6%B3%A2%E9%82%A3%E5%A5%91%E6%95%B0.html 动规是由前一个状态推导出来的,而贪心是局部直接选最优的,对于刷题来说就够用了。 class Solution {

【LeetCode刷题】常用小技巧

一、字符串类 分割字符串 String str = "I am fine, thank you"String[] strArray = s.split(" "); // 这里匹配的是1个空格String[] strArray = s.split("\\s"); // 正则匹配,这里匹配的也是1个空格String[] strArray = s.split("\\s+"); //

【刷题】最长回文子串——manacher(马拉车)算法

LeetCode 5.最长回文子串 给定字符串s,找到s中最长的回文子串。 回文串,指的是无论从左往右读还是从右往左读,结果都是一样的。 比如 “dabcbacf” 的最长回文子串为 “abcba”。 manacher算法 主要思路:充分利用前面已经求出的回文信息; 动态规划: 首先需要构建新的字符串,以消除奇回文串和偶回文串的差别,在每个字符间插入一个特殊符号(例如“#”),然后为了

【刷题】LCS算法-最长公共子序列

求两个字符串的公共最长序列。 例如, 输入:‘acbde’ , ‘cfebd’输出:3 (最长的公共子序列为’cbd’) 动态规划: i == 0 or j == 0, dp[i][j] = 0A[i] == B[j], dp[i][j] = dp[i−1][j−1]+1A[i] != B[j], dp[i][j] = max(dp[i−1][j], dp[i][j−1]) class

【刷题】编辑距离

编辑距离 编辑距离,是指将一个字符串转变为另一个字符串所需要的最少编辑次数。 许可的编辑操作包括3种: 插入——将一个字符替换成另一个字符删除——插入一个字符替换——删除一个字符 例如:   str1 = ‘kitten’ ,str2 = ‘sitting’   str1转换为str2可进行如下操作:     将k替换为s,kitten → sitten     将e替换为i,sitten

【刷题】DFS和BFS算法

先举个栗子 一颗二叉树如下,搜索所有路径              DFS的做法是:   每条路走到头(叶节点),然后再回头寻找其他路。上图为例,1出发到2,到4,到8,走到头了,退回4,退回2,到5,退回2,退回1,到3,到6,…,知道走完到7。 BFS的做法是:   自上而下,一层一层的走。上图为例,1出发,可以到2和3两个位置,存储起来[2,3],2可以到4和5,3可以到6和7,存储为[4

【每日刷题】Day38

【每日刷题】Day38 🥕个人主页:开敲🍉 🔥所属专栏:每日刷题🍍 🌼文章目录🌼 1. 2696. 删除子串后的字符串最小长度 - 力扣(LeetCode) 2. LCR 123. 图书整理 I - 力扣(LeetCode) 3. 面试题 02.06. 回文链表 - 力扣(LeetCode) 1. 2696. 删除子串后的字符串最小长度 - 力扣(Leet

leetcode刷题:买卖股票的最佳时机

题目 给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。 你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。 返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回 0 。 示例 1 输入:[7,1,5,3,6,4] 输出:5 解释:在第 2 天(股票价

Kruskal算法刷题笔记

理论基础: 例题: 卡码网---53:寻宝 题目 题目描述 在世界的某个区域,有一些分散的神秘岛屿,每个岛屿上都有一种珍稀的资源或者宝藏。国王打算在这些岛屿上建公路,方便运输。 不同岛屿之间,路途距离不同,国王希望你可以规划建公路的方案,如何可以以最短的总公路距离将 所有岛屿联通起来。  给定一张地图,其中包括了所有的岛屿,以及它们之间的距离。以最小化公路建设长度,确保可以链接到所有