未来0116
未来0116
全部文章
分类
c++(4)
算法(5)
编译器(1)
题解(90)
归档
标签
去牛客网
登录
/
注册
未来0116的博客
保持主动 无限追求
全部文章
(共101篇)
堆栈总结(三)
一.知识点总结 1.sort函数:用于C++中,对给定区间所有元素进行排序,默认为升序,也可进行降序排序。 sort函数的介绍:sort函数用于C++中,对给定区间所有元素进行排序,默认为升序, 也可进行降序排序。sort函数进行排序的时间复杂度为n*log2n,比冒泡之类的排序算法效率要高 对于...
C++
2022-02-09
0
660
堆栈总结(二)
一.知识点总结 1.单调栈:是一个栈,不过栈内元素保证单调性。即,栈内元素要么从小到大,要么从大到小。 而单调栈维护的就是一个数前(后)第一个大于(小于)他的数。 单调栈的伪代码: while(栈顶元素比入栈元素小且栈不空){ 栈顶元素弹出 } 元素入栈 首先要知道单调栈入栈的的是...
C++
2022-02-09
0
634
#堆栈总结(一)#
一.知识点总结 1.先简单的介绍两个数据结构: (1)栈:栈的主要特点就是先进后出,只在栈顶进行入栈和出栈操作 (2)队列:队列主要特点是先进先出,队列可以分为一般队列和双端队列,一般队列可以实现对队列的队头 访问、队头出队和队尾插入;双端队列可以实现对队头队尾元素的访问、插入和删除。 利用c++的...
C++
2022-02-08
0
592
题解 | #序列化二叉树#
一.题意整理 请实现两个函数,分别用来序列化和反序列化二叉树。 1.二叉树的序列化是指: 把一棵二叉树按照某种遍历方式的结果以某种格式保存为字符串,从而使得内存中建立起来的二叉树可以持久保存。序列化可以基于先序、中序、后序、层序的二叉树遍历方式来进行修改,序列化的结果是一个字符串,序列化时通过 某种...
C++
二叉树
2022-02-06
0
502
题解 | #按之字形顺序打印二叉树#
一.题意整理 请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推。也就是在层次遍历的基础上实现对整个树进行之字形顺序打印。 二.思路整理 先我们根据题目的描述,能够找到该题的解决模型为二叉树的层次遍历。只不过...
C++
层次遍历
2022-02-06
0
564
题解 | #单调栈#
一.题意整合 给定一个长度为n的可能含有重复值的数组arr,找到每一个i位置左边和右边离i位置最近且值比 arri小的位置,若不存在即返回值为-1。 二.思路整理 题目的意思很明了使用单调栈,借助单调性处理问题的思想在于即使排除了不可能的选项,保持策略集合的高度有效性和秩序性。 单调栈:单调栈就是使...
C++
单调栈
2022-02-06
0
635
题解 | #滑动窗口的最大值#
一.题意整理 给定一个数组num和一个窗口大小size,求每个连续size序列的最大值。 二.思路整理 首先指出利用c++STL中的max_element也可以AC本题,但是很显然时间复杂度比较高。那么我们可以采用滑动窗口算法来解决,滑动窗口算法本质就是对区间进行扩张和放缩,下面给出滑动窗口的框架 ...
C++
滑动窗口
2022-02-06
0
461
题解 | #数据流中的中位数#
一.题意整理 由题意可知本题要求对于每个输入的数据求出当前录入的数据的中位数。 二.思路整理 由于要求求出每一次输入数据的中位数,要知道求中位数首先想到就是排序,将每次数据进行排序,然后根据每一次数据个数求出中位数。当然这个思路是肯定可以的,但是时间复杂度偏高,每次利用sort排序的时间复杂度就已经...
C++
堆
2022-02-06
0
424
题解 | #表达式求值#
一.题意整理 给出一个含有加减乘除和括号的表达式的字符串,求出该字符串的值。(运算符合运算法则,先乘除后加减) 二.思路整理 利用栈来求表达式是栈的一种基本运用,下面我们将会介绍如何利用栈来解决表达式求值的问题: 对于算术表达式一般分成三种有:前缀、后缀和中缀 中缀表达式:救是我们常见的算术表达式,...
C++
栈
2022-02-06
0
527
题解 | #最小的K个数#
一.题意整理 题目意思很简单就是给出一个组可能重复的数组,找到数组中不去重的K个最小数,然后返回。 二.思路整合 要找到数组中不去重的第k个最小数,首先我们想到的就是先排序,然后返回排序后的k个最小数。我们可以利用c++中的sort函数来实现对数组的排序,下面是对sort函数的一些介绍: sort函...
C++
排序
2022-02-01
0
501
首页
上一页
1
2
3
4
5
6
7
8
9
10
下一页
末页