重新读数据结构 - 心得

数据结构与排序算法精要
本文探讨了链表、树、红黑树等数据结构的特点及应用场景,并深入介绍了归并排序与快速排序两种高效的排序算法,分析了它们的时间复杂度与优缺点。

数据结构的特性



链表:

1. 链表有 双端、双向、有序链表

2. 优点:动态分配空间、插入、删除快 , 花费时间O(n),最近一个点的花费时间O(1).

缺点:查询慢

3. 总结:

多用于存储 ,查找用树构建索引


递归-归并排序

1. 简易排序的执行效率 都为 O(n~2)

2. 归并排序 - 核心思路 : 就是将一个数组 不停的 划分两个数组,然后合并为有序数组, 效率为 O(n*logN), 速度比简易排序快很多,但有缺点,需要暂用两份内存。

3. 消除递归的方法,就是通过栈的实现来解决


快速排序

1.为通用排序最好的算法, 快速排序的效率也为O(n*logN),并且不需要占用两倍的空间


1.查找算法的效率为 O(logN) 实际为Log2~N

2.删除树子节点,就是通过 中序的后继结点补上


红黑树

1. 由于有序的情况底下,树出现极限的情况,导致效率降低为 O(N)

2.红黑规则

2.1 每一个节点不是红色就是黑色

2.2 根节点一定是黑色

2.3 如果节点是红色,则子节点一定是黑色

2.4 从根到任一子节点或空节点的每条路径,必须包含相同数目的黑节点。(即树的高度是必须一致的)

3. 违规修正

3.1 修改节点的颜色(即插入的节点如果是黑色下跟着两个红色,则必须采取变颜色)

3.2 改变旋转操作

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值