太阳hxy
太阳hxy
全部文章
题解
选择题(2)
归档
标签
去牛客网
登录
/
注册
太阳hxy的博客
全部文章
/ 题解
(共73篇)
NC45 实现二叉树先序,中序和后序遍历
class Solution { public: //创建三个容器用于存前序、中序、后序遍历的结果 vector<int>pre; vector<int>mid; vector<int>post; vector<vec...
C++
二叉树
2023-08-25
0
257
NC318 字符串的相邻字符去重
链接 public: string removeDuplicates(string s) { //创建一个栈 stack<char> stack1; //遍历字符串 for(int i=0;i<s.size()...
C++
栈
字符串
2023-08-25
0
317
求m区间的最小值
求m区间的最小值 代码1;(手写单调队列) #include<iostream> using namespace std; #define N 2000005 int n,m,a[N],b[N]; int head=0,rear=0; int main(){ scanf("%d ...
C++
单调队列
递归
2023-07-23
1
355
寻找第k大
寻找第k大 思路:快排+二分 1.对于快排,先设置第一个数为基准数 2.设置一个指针i指向区间的左端点,设置一个指针j指向区间的右端点 3.只要两个指针没有相遇,即i<j,就继续循环 4.i指针只要还没有与j指针相遇(i<j),如果要进行升序,就让i去找比基准大的数,这样交换后就是大...
C++
二分查找
快速选择
2023-07-23
3
592
最小的k个数
最小的k个数 方法一:用vector中的sort函数进行排序 思路: vector<int>input; sort(input.begin(),input.end()) return vector<int>({input.begin(),input.begin()+k}...
C++
双指针
二分查找
堆(优先队列)
2023-07-23
3
385
循环队列(模板)
循环队列(模板) 思路: 1.创建一个结构体用来表示循环队列:一个数组,一个队首head,一个队尾rear 2.初始化循环队列:head==rear=0; 3.如果head==rear,则队列为空 4.如果(rear+1)%(n+1)==head,则循环队列为满,注意是由于是循环队列,所以要取余才...
C++
队列
2023-07-22
1
384
队列(模板)
队列(模板) 思路: 1.构造一个结构体表示队列:包含一个数组用来存队列中的元素,一个队头指针head,一个队列的尾指针rear 2.初始化为空队列:head=rear=0; 3.从队尾插入元素,即将元素插入下标为rear的位置,再将rear++ 4.获得队首,即head处的元素 5.让队首出队列,...
C++
队列
2023-07-22
1
309
链表(模板)
链表(模板) 思路: 对于链表的插入和删除节点操作,由于头结点的插入和删除和其他节点的插入和删除操作不同,所以为了方便操作,可以增加一个虚的头节点,对于插入和删除操作设置两个指针pre和cur,pre指向需要删除或是插入的位置,pre指向需要删除或插入的位置的前一个节点 1.插入操作:创建一个新...
C++
链表
2023-07-22
1
392
表达式求值
表达式求值 思路: 对于上述两个要求,我们要考虑的是两点,一是处理运算优先级的问题,二是处理括号的问题。 处理优先级问题,那必定是乘号有着优先运算的权利,加号减号先一边看,我们甚至可以把减号看成加一个数的相反数,则这里只有乘法和加法,那我们优先处理乘法,遇到乘法,把前一个数和后一个数乘起来,...
C++
栈
字符串
2023-07-19
0
351
有效括号序列
有效括号序列 思路: 由于需要进行括号匹配,由于对于最晚的进入的待匹配的括号是最早进行匹配的,所以符合后入先出的结构,所以用一个栈进行辅助 图解: 链接 代码: class Solution { public: //由于需要进行括号匹配,由于对于最晚的进入的待匹配的括号是最早进...
C++
栈
字符串
2023-07-18
0
331
首页
上一页
1
2
3
4
5
6
7
8
下一页
末页