摘要: 1:我写的数组栈,在“有效括号中”是如何工作的。 什么时候push? 在将已知输入数据压入栈中时,且为左括号类型。 什么时候pop? 在确定碰见的右括号类型与栈顶元素匹配时。为了不妨碍下一个碰见的右括号与另一个去除原先栈顶元素的栈顶元素比较。 栈空/不空分别代表什么? 栈空代表所有左括号类型有相应的 阅读全文
posted @ 2026-04-27 20:04 Szy111 阅读(5) 评论(0) 推荐(0)
摘要: 点击查看代码 queue<node> q; void bfs(){ while(!q.empty()){ node tmp=q.top();//node为(x,y)结构体 q.pop();//出队 if(到达目标终点){ 更新 return; } //有的会有剪枝 for(int i=0;i<m;i 阅读全文
posted @ 2026-04-10 16:23 Szy111 阅读(2) 评论(0) 推荐(0)
摘要: unordered_set 是 C++ 标准库中的一个容器,它位于 <unordered_set> 头文件中,用于存储唯一元素的集合下面。从多个方面详细介绍 unordered_set: 特点 无序性:unordered_set 中的元素是无序存储的,不像 set 那样按照元素的值进行排序。这是因为 阅读全文
posted @ 2026-04-07 18:32 Szy111 阅读(5) 评论(0) 推荐(0)
摘要: class Solution { public: int maximumUniqueSubarray(vector<int>& nums) { int mx = ranges::max(nums); vector<int8_t> has(mx + 1); int ans = 0, s = 0, le 阅读全文
posted @ 2026-04-07 18:32 Szy111 阅读(3) 评论(0) 推荐(0)
摘要: 几张卡牌 排成一行,每张卡牌都有一个对应的点数。点数由整数数组 cardPoints 给出。 每次行动,你可以从行的开头或者末尾拿一张卡牌,最终你必须正好拿 k 张卡牌。 你的点数就是你拿到手中的所有卡牌的点数之和。 给你一个整数数组 cardPoints 和整数 k,请你返回可以获得的最大点数。 阅读全文
posted @ 2026-03-30 16:47 Szy111 阅读(3) 评论(0) 推荐(0)
摘要: 快速排序是个最优和平均情况下时间复杂度都为O(nlogn)的排序算法,但在最坏情况下时间复杂度为O(n^2)(已经排好序,且每次选的都是最小最大值) 快速排序不是个稳定的排序算法。(稳定体现在若待排序的算法有两个相同值,则相对在后的那个值会排在前相同值后面) 值得一提的是,大学阶段的稳定排序只有直接 阅读全文
posted @ 2026-03-25 19:06 Szy111 阅读(4) 评论(0) 推荐(0)
摘要: 博客园其它帖子讲得很好 阅读全文
posted @ 2026-03-20 14:22 Szy111 阅读(3) 评论(0) 推荐(0)
摘要: 【题目描述】 科学家在热带森林中发现了一种特殊的昆虫,这种昆虫的繁殖能力很强。每对成虫过x 个月每月产y 对卵,每对卵要过两个月长成成虫。假设每个成虫不死,第一个月只有一对成虫,且卵长成成虫后的第一个月不产卵(过x 个月产卵),问过z 个月以后,共有成虫多少对?0≤x≤20,1≤y≤20,X≤z≤5 阅读全文
posted @ 2026-03-20 11:06 Szy111 阅读(22) 评论(0) 推荐(0)
摘要: 【题目描述】 给定一个由a-z这26个字符组成的字符串,统计其中哪个字符出现的次数最多。 【输入】 输入包含一行,一个字符串,长度不超过1000。 【输出】 输出一行,包括出现次数最多的字符和该字符出现的次数,中间以一个空格分开。如果有多个字符出现的次数相同且最多,那么输出ascii码最小的那一个字 阅读全文
posted @ 2026-03-19 17:25 Szy111 阅读(6) 评论(0) 推荐(0)
摘要: #include<bits/stdc++.h> using namespace std; #define N 105 int main() { string s[N]; int n = 1; while(cin >> s[n])//这个可以getline,后面sort用string中的begin和e 阅读全文
posted @ 2026-03-19 11:39 Szy111 阅读(7) 评论(0) 推荐(0)