首页 > 其他分享 >知识点学习掌握-集合

知识点学习掌握-集合

时间:2022-10-15 18:44:37浏览次数:50  
标签:知识点 结点 掌握 ArrayList 堆栈 Vector 红黑树 集合 Stack

集合

Arraylist与LinkedList的区别

ArrayList是一个动态数组,但对数据的增加和删除比较复杂,它是基于索引的数据接口,随机访问较为便捷,它的底层是数组,是非同步的

LinkedList是以链表形式保存集合中的元素,所以随机访问的性能较差,但插入删除时不需要像ArrayList那样重新计算大小和更新索引。

Vector与Stack

​ Vector与ArrayList相似,但是Vector是$\textcolor{Red}{同步}$的。所以说Vector是线程安全的动态数组。它的操作与ArrayList几乎一样。

​ Stack继承自Vector,实现一个后进先出的堆栈。Stack提供5个额外的方法使得Vector得以被当作堆栈使用。基本的push和pop 方法,还有peek方法得到栈顶的元素,empty方法测试堆栈是否为空,search方法检测一个元素在堆栈中的位置。Stack刚创建后是空栈。

HashMap数据结构

  • 底层数据结构,1.7与1.8有何不同?
    • 1.7之前是数组+链表,1.8之后是数组+(链表|红黑树)

补充:B树、B+树、红黑树

  • B树

B树和平衡二叉树的不同之处是:B树属于多叉树又名平衡多路查找树(查找路径不止两个),数据库索引技术里大量使用着B树和B+树的数据结构。

  • B+树

B+树是在B树的基础上又一次的改进,其主要对两个方面进行了提升,一方面是查询的稳定性,另外一方面是在数据排序方面更友好

  • 红黑树

    红黑树是每个节点都带有颜色属性的二叉查找树,颜色或红色或黑色。它必须满足下面性质:

    • 性质1:每个节点要么是黑色,要么是红色。
    • 性质2:根节点是黑色。
    • 性质3:每个叶子节点(NIL)是黑色。
    • 性质4:每个红色结点的两个子结点一定都是黑色。
    • 性质5:任意一结点到每个叶子结点的路径都包含数量相同的黑结点。

标签:知识点,结点,掌握,ArrayList,堆栈,Vector,红黑树,集合,Stack
From: https://www.cnblogs.com/kulapikajy/p/16794765.html

相关文章