常见数据结构

 

栈

特点

进栈顺序:A-B-C-D

出栈顺序:D-C-B-A

 

 

队列

进栈顺序:A-B-C-D

出栈顺序:A-B-C-D

 

数组

 

链表

总结:相对于数组来说,链表是一种查询比较慢,增删比较快的模型;数组根据索引查询最快,双链表增删头尾元素最快

二叉树、二叉查找树

 

 

 

 

 

 

 

 

 

 

 

 

 

平衡二叉树

 

 

 

 

 

 

 

 

 

 

 

 

1. 左左插入元素 2.右旋 3.迁移不合理子树:

 

我们发现:

1.以出问题的枝点为支点,先左旋(然后我们发现问题就变成了和左左一样的情况) 2.整体右旋  3.迁移不合理子树:

 

 

 

 

 

 

1.左旋 2. 迁移不合理子树:

 

 

 

 

 

 

 1.以出问题的枝点为支点,先右旋(然后我们发现问题就变成了和右右一样的情况) 2.整体左旋  3.迁移不合理子树:

 

 

 

面试题:如果给你1到7的数据,你该如何制作出平衡二叉树,写出过程

1.以1作为根节点,然后加2,3

2.不平衡,整体左旋,平衡后加入3,4,5

3.不平衡,(此时可以整体左旋,但是为了使影响范围更小,所在局部范围进行左旋)以3为根节点左旋,加6

4.不平衡,整体左旋,调整不合理子树(3),加7

5.不平衡,以5为根节点左旋,完成

红黑树

 

 

 

 

 

 

 

 

posted @ 2022-10-22 21:29  去公司搞点薯条  阅读(31)  评论(0)    收藏  举报