数据结构
1.数组
优点:
查找速度快,可以根据下标锁定位置
缺点:
增加和删除慢,因为新增和删除的时候是创建一个新的数组将老数组的内容复制到新数组中,每次操作都会创建新数组所以慢
2.链表
优点:新增和删除快,因为增加和删除只需要修改相邻的两个节点的指向
缺点:查询慢,因为他查询会按照一个节点一个节点的向下找,直到找到需要的节点
单向链表
双向链表
二叉树
红黑树
红黑树是一种自平衡的二叉树
红黑树要素:
1.每个节点要么是黑色,要么是红色
2.根节点都是黑色
3.每个叶子节点都是黑色
4.每个红色叶子节点的两个子节点一定是黑色
5.任意一节点到每个叶子节点的路径中都包含相同的黑色节点
旋转原理:
1.左旋:以某个节点为支点,将其右子节点旋转为父节点,右子节点的左子节点转换为右节点,左子节点保持不变
2.右旋:以某个节点作为支点,将其左节点旋转为父节点,左子节点的右子节点旋转为左子节点,右子节点保持不变
3.变色:无论怎么变色根节点都为黑色
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构