- 博客(4)
- 收藏
- 关注
原创 二叉树的知识总结与刷题
二叉树的理论基础 二叉树分为满二叉树和完全二叉树。自己要在心里理解什么是满二叉树,什么是完全二叉树。 给树赋予数值,就变成了二叉搜索树,二叉搜索树是一个有序树。二叉搜索树的左右子树也是有序树。并且,如果左子树不空,则左子树上的所有节点的值都小于它的根节点的值;相反,右子树都大于,二叉搜索树简称搜索树。 C++中map、set、multimap,multiset的底层实现都是平衡二叉搜索树 二叉树可以以我们平时常见的链表来链式存储,也可以顺序存储。 数组中的存储,类似于深度遍历中的前序遍历。 但是用链式表示
2022-03-25 16:49:15 170
原创 字符串总结
LeetCode中的替换空格 题目 (关给字符串的一些操作) 到带填充后的大小,然后从后向前进行操作 上述做法的好处:1. 不用申请新的数组; 从后向前填充元素,避免了从前向后填充元素要每次添加元素都要将添加元素之后的所有元素向后移动。 需要注意的是:在python和Java中,字符串被设计为不可变的类型,也就是无法直接修改字符串的某一字符,需要新建一个字符串才能实现。 但是在C++当中,string被设计为可变的类型,因此可以在不新建字符串的情况下实现原地修改
2022-03-08 16:46:35 377
原创 哈希表总结
哈希表(Hash Table)是根据关键码的值直接进行访问的数据结构。 直白来讲其实数组就是一张哈希表。哈希表中关键码就是数组的索引下表,然后通过下表直接访问数组中的元素。 **一般哈希表都是用来快速判断一个元素是否出现集合里。**将元素值映射到哈希表上就涉及到了hash function,也就是哈希函数。 哈希表可以是数组和链表的结合。一般有三种数据结构来表示哈希表: 数组 集合(set) 映射(map) 在C++中,set 和 map 分别提供以下三种数据结构: 红黑树是一种平衡二叉搜索树,所以ke
2022-02-26 15:10:08 817
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人