
数据结构与算法
qq_43811135
这个作者很懒,什么都没留下…
展开
-
红黑树概念与代码展示
红黑树定义 一棵红黑树需要满足这样几个要求: 根节点是黑色的; 每个叶子节点都是黑色的空节点(NIL),也就是说,叶子节点不存储数据; 任何相邻的节点都不能同时为红色,也就是说,红色节点是被黑色节点隔开的; 每个节点,从该节点到达其可达叶子节点的所有路径,都包含相同数目的黑色节点; 平衡调整 在插入、删除节点的过程中,第三、第四点要求可能会被破坏,而“平衡调整”,实际上就是要把被破坏的第三、第四点恢复过来。 红黑树通过节点的左旋和右旋完成平衡调整。 插入操作的平衡调整 红黑树规定,插入的节点必须是红色的原创 2020-12-29 13:04:52 · 182 阅读 · 0 评论 -
浅谈排序算法
浅谈排序算法 首先介绍一个大佬的算法学习网站:小浩算法 他的这个算法网站在Git星星之多,啧啧,顺便一提我还在他的分群里(笑)~ 前段时间按他的分类刷了下leetcode,整个人感觉升华了一般,啊,那个快感啧啧… 以下贴出排序算法的java代码实现,并且介绍一下基本概念。 插入排序: 插入排序就好似整理扑克牌一般,每次的插入都一个个与元素比较,放入合适的位置。 图取自算法导论 左边遍历过排完序的数组就是一个循环不变式。 private static int[] insert_sort_ASC(in原创 2020-12-29 13:03:01 · 492 阅读 · 0 评论