腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
返回腾讯云官网
C/C++、数据结构、算法
专栏作者
举报
75
文章
6772
阅读量
11
订阅数
订阅专栏
申请加入专栏
全部文章(75)
数组(32)
函数(30)
指针(28)
int(26)
数据(16)
c++(15)
变量(15)
遍历(14)
算法(14)
vector(11)
链表(11)
字符串(10)
return(9)
存储(8)
编译器(8)
内存(8)
dfs(7)
排序(7)
二叉树(6)
root(6)
队列(6)
对象(6)
搜索(6)
递归(5)
统计(5)
容器(4)
dp(4)
模型(4)
path(3)
ps(3)
程序(3)
queue(2)
stack(2)
string(2)
内存管理(2)
数据类型(2)
php(1)
缓存(1)
break(1)
case(1)
char(1)
date(1)
hash(1)
iterator(1)
key(1)
list(1)
map(1)
parent(1)
push(1)
row(1)
set(1)
size(1)
stl(1)
void(1)
编码(1)
编译(1)
博客(1)
测试(1)
动态规划(1)
二进制(1)
继承(1)
基础(1)
计算机(1)
开发(1)
连接(1)
排序算法(1)
入门(1)
设计(1)
调试(1)
优化(1)
原理(1)
搜索文章
搜索
搜索
关闭
DS进阶:AVL树和红黑树
parent
root
遍历
连接
搜索
二叉搜索树(BST)虽可以缩短查找的效率,但如果数据有序或接近有序二叉搜索树将退化为单支树,查找元素相当于在顺序表中搜索元素,效率低下。因此,两位俄罗斯的数学家G.M.Adelson-Velskii和E.M.Landis在1962年发明了一种解决上述问题的方法:当向二叉搜索树中插入新结点后,如果能保证每个结点的左右子树高度之差的绝对值不超过1(需要对树中的结点进行调整),即可降低树的高度,从而减少平均搜索长度。
小陈在拼命
2024-04-25
60
0
算法思想总结:栈
int
push
算法
字符串
存储
我们平时看到的 1+2*(3-4*5)+6/7 叫做中缀表达式,平时我们习惯用这个计算的原因是我们可以整体地去看到这个表达式并且清楚地知道各个运算符的优先级,但是计算机并不一定知道,因为他总是从前往后去遍历这个表达式。如上面这个例子,当按照计算机的逻辑去扫描了1+2的时候,并不敢直接去进行运算,因为可能后面存在一个优先级更高的操作符会优先进行计算。甚至有些时候还会出现括号这一种可以改变操作符优先级的符号!!所以这个时候,为了能够解决这个问题,就有了波兰表达式(前缀表达式)和逆波兰表达式(后缀表达式)。
小陈在拼命
2024-04-23
62
0
C++:map和set的使用
c++
容器
map
set
排序
在学习map和set之前,我们接触到的容器有:vector、list、stack、queue、priority_queue、array,这些容器统称为序列式容器,因为其底层为线性序列的数据结构,里面存储的是元素本身。
小陈在拼命
2024-04-20
82
0
算法思想总结:链表
指针
遍历
链表
算法
统计
小陈在拼命
2024-04-20
78
0
二叉树经典OJ题(2)
二叉树
root
遍历
递归
数组
技巧:在递归过程中,我们想要有一个变量记录全过程(该题中的prev),第一种方法就是设置成全局变量,第二种方法就是传引用。
小陈在拼命
2024-04-20
42
0
算法思想总结:分治思想
vector
排序
数组
算法
int
1,快速排序本身相当于一个前序遍历,最好的时间复杂度是NlogN 最差的时间复杂度是N^2 ,最坏的情况是出现在(1)以最左侧或最右侧为基准值的时候,凑巧又接近有序(2)大量重复元素。为了解决这个问题衍生出了优化思路:三组划分+随机取key。并且这种方式还可以解决top-k问题,并且时间复杂度是o(N)比堆排序还优秀,我们称之为快速选择算法。
小陈在拼命
2024-04-14
106
0
DP:子数组模型
数组
dp
int
动态规划
模型
小陈在拼命
2024-04-12
78
0
DFS:记忆化搜索
dfs
int
return
vector
搜索
小陈在拼命
2024-04-10
68
0
DFS:floodfill算法解决矩阵联通块问题
数组
算法
dfs
int
vector
小陈在拼命
2024-04-10
49
0
DFS:深搜+回溯+剪枝解决矩阵搜索问题
搜索
dfs
int
row
vector
3、dfs的返回值不一定是void,如果该题目并不只是完全地去统计,而是涉及到我们做出的选择可能会错误的时候,这个时候我们就需要通过bool类型的返回值来帮助我们判断当前的填法是否正确。比如解数独和单词搜索问题
小陈在拼命
2024-04-10
75
0
DFS:深搜+回溯+剪枝解决组合问题
dfs
int
path
vector
遍历
小陈在拼命
2024-04-09
83
0
DFS:深搜+回溯+剪枝解决排列、子集问题
int
path
return
vector
dfs
排列和子集问题就总结到这啦!!回溯有关的题关键就是画树状图,然后根据树状图去思考怎么进行深搜、回溯和剪枝!!
小陈在拼命
2024-04-04
94
0
DFS:二叉树的深搜与回溯
path
return
root
二叉树
dfs
小陈在拼命
2024-04-02
81
0
DFS:从递归去理解深度优先搜索
递归
链表
搜索
dfs
return
小陈在拼命
2024-03-30
75
0
DP:简单多状态模型
dp
int
vector
模型
数组
思路:我们要找到最大的数和最小的数,并且保证最小的数是在最大数的左边 ,所以不能直接用找大和找小的思路,用maxi更新最大利润,用mini记录最小的股票。
小陈在拼命
2024-03-30
75
0
算法思想总结:位运算
int
return
数组
算法
统计
利用第七条特性:n&(n-1)干掉最后一个1,然后每次都用count++去统计,直到变成0
小陈在拼命
2024-03-25
62
0
DP:路径规划模型
数组
dp
int
vector
模型
路径规划主要是让目标对象在规定范围内的区域内找到一条从起点到终点的无碰撞安全路径。大多需要用二维dp数组去实现
小陈在拼命
2024-03-24
83
0
DP:斐波那契数列模型
return
模型
数组
dp
int
我们会发现dp[1]的初始化和填表里面的过程非常相似,所以我们可以用一个动态规划的小技巧——虚拟节点(专门用来处理边界问题)
小陈在拼命
2024-03-23
50
0
算法思想总结:模拟算法
算法
统计
hash
int
数组
写法1: 两个哈希表 一个存储字符和下标的映射关系,另一个用数组模拟哈希表存字符出现的次数。
小陈在拼命
2024-03-23
90
0
算法思想总结:前缀和算法
vector
数组
算法
统计
int
小陈在拼命
2024-03-23
63
0
点击加载更多
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
立即发文
Python精品学习库
代码在线跑,知识轻松学
立即查看
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
立即体验
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
立即查看
领券
问题归档
专栏文章
快讯文章归档
关键词归档
开发者手册归档
开发者手册 Section 归档