
算法
文章平均质量分 51
呆鱼敲代码
这个作者很懒,什么都没留下…
展开
-
平衡二叉搜索树(AVL)
平衡二叉树的原理,左/右旋,左右/右左双旋,实现原理原创 2023-11-27 12:44:26 · 1233 阅读 · 0 评论 -
翻转链表(就地逆置原理)
的操作顺序交换,即先删掉结点信息,再进行结点前置操作就可以用pre->next记录下nod的下一个结点的信息了。2、将结点前置过程中,涉及到了删除结点的操作(删除原来位置),故需要用pre结点记录当前结点的前一个结点。(head记录最前面的结点,pre记录上一个结点,nod记录当前的结点,temp记录下一个结点)3、将pre->next指向temp,从而删除原来位置的nod结点:pre->next=temp。1、记录nod的下一个结点信息:temp=nod->next。遍历结点的同时不断将结点前置。原创 2024-03-18 18:29:47 · 626 阅读 · 0 评论 -
三大排序(插入排序,选择排序,冒泡排序)
原理:将第i个数通过不断与前面大于他的数交换,直到插入到前面合适的位置。代码。原创 2024-03-17 20:21:29 · 718 阅读 · 0 评论 -
树上差分原理
表示为后面的区间都减去权值,为后面不应该受影响的区间抵消掉该影响。最后再做一个前缀和,则就能将差分值转化为每个点在修改后的权值了。那么两结点的"区间修改"也就是“两结点的差分值各自+1,最近公共祖先的差分值每次-1(总共减2)"常用在线性修改区间的值,我们通过修改区间边界的值,”可以理解为“结点与其所有子树的权值之和”。树上差分常用在对路径权值的快速修改操作。则前缀和就是该结点的入边的权值。表示给后面的区间都加上权值,那么将线性差分转化为。我们将线性差分中的"原创 2024-03-13 20:31:41 · 456 阅读 · 0 评论 -
最近公共祖先结点--LCA(倍增法,言简意赅)
首先我们来想想朴素做法是怎样的。原创 2024-03-13 19:54:42 · 671 阅读 · 0 评论