DRKing
DRKing
全部文章
分类
归档
标签
去牛客网
登录
/
注册
DRKing的博客
全部文章
(共116篇)
题解 | 大整数哈希
#include <iostream> #include<unordered_map> using namespace std; int main() { unsigned long long n; cin>>n; unordered_m...
2026-02-05
0
31
题解 | 两数之和
这题的难点在于如何缩短他的时间复杂度为O(n)如果直接使用BF(暴力)算法,会有部分数据不通过这里可以使用哈希表法:遍历数组时将其值为键,位置i为值,传入哈希表中,输入一个数据时,需要看目标数T与他的差是否在哈希表中,这样每当输入一个数据,他的值和位置信息就会存储到哈希表中,直到遇到匹配的数据ret...
2026-02-05
0
37
题解 | 字符串哈希
使用哈希表存储字符串出现的次数,每当有新的字符串输入时,哈希表中加入一个新的键-值对,当输入为已经出现过的字符串时,这个键对于的值+1;最后只需要输出哈希表中键的个数即可. #include <iostream> #include<unordered_map> using n...
2026-02-05
0
34
题解 | 自动管理停车场桩位系统
题干解读:停车场的停车规则类似于栈,只有靠经出口(栈顶)的车全部出去后,靠后的车辆才能出去.要处理4种信息:1.将停车的车辆的编号记录下来.2.出去一辆车,删除他的编号信息。3.输出最靠近出口的车辆的编号信息.4.输出最小的车辆编号思路:按照题干要求依次使用stack中的函数来解决即可. class...
2026-02-05
0
37
题解 | 验证栈序列
解决这道题的关键在于模拟匹配的过程,先将入栈和出栈的数据存储到两个数组中,再用栈和这两个数组来模拟进出栈的过程。1.当栈为空或者栈顶元素和出栈的元素不相同时,则将入栈序列的下一个元素输入.2.当栈顶元素和出栈的元素相同时,则输出栈顶元素,将出栈序列的指针下移一位,再次进行判断。当a中所有元素全部入栈...
2026-02-05
0
35
题解 | 栈和排序
要输出出栈序列的最大字典排序:1. 栈顶的元素 大于 所有的未入栈元素的最大值:输出栈顶到情况22.栈顶小于为入栈元素的最大值: push(a[i])。最后将所有栈中元素输出即可。值得注意的是,这里求数组中未入栈元素的最大值时间复杂度不能过大,否则会导致不通过.可以采取max函数从最后一个数开始预处...
2026-02-05
0
37
题解 | 用两个栈实现队列
使用两个栈来模拟序列,关键在于实现他要求的先入先出,所以应该在pop的时候先将stack1中的数依次push入stack2,这样,stack2栈顶的元素就是stack1先输入的数.将其记录下来,然后pop掉,最后再放回stack1中即可. class Solution { public: ...
2026-02-05
0
37
题解 | 牛牛与后缀表达式
1.已知数字的输入格式为num#,所以可通过#来确定输入的数字。2.由于所有的运算符都位于操作数之后,所以当遇到运算符时,将前面的两个数字进行对应的运算即可 。 class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方...
2026-02-04
0
43
题解 | 表达式求值
个人觉得写这道题的关键在于理解数学公式计算时的思维过程,首先就算是看运算符的优先级,我使用了哈希表来实现,*的优先级为2,+法于-法为1.然后就得弄清楚什么时候计算:1.有括号时,先算括号中的, 1.可以从输入的第一个左括号算起,当遇到右括号时计算出括号中的总值. 2.如...
2026-02-04
0
45
题解 | 有效括号序列
每当我遇到这种字符串匹配问题时,都会使用到哈希表(unordered_map),将每一组括号存入到哈希表中。当栈为空时会存入括号,之后每遇到一个字符就会将他于栈顶的元素对应的括号比较,如果匹配则输出栈顶元素,如果不匹配就存入栈。当遍历完字符串后就检查栈stk,如果为空则表示所有括号匹配成功,否则表示...
2026-02-04
0
34
首页
上一页
1
2
3
4
5
6
7
8
9
10
下一页
末页