• 2024-09-04算法与数据结构——AVL树(平衡二叉搜索树)
    AVL树在“二叉搜索树”章节提到,在多次插入和删除操作后,二叉搜索树可能退化为链表。在这种情况下,所有操作的时间复杂度将从O(logn)劣化为O(n)。如下图,经过两次删除节点操作,这棵二叉搜索树便会退化为链表再例如,下图所示的完美二叉树中插入两个节点后,树将严重向左倾斜,查找操作的
  • 2024-07-01Day8 翻转字符串里面的单词,右旋字符串
    翻转字符串里面的单词我觉得这道题是一道可以很好的帮助我们的理解再次关于快慢双指针,希望我们能够经过我们多次的锻炼来提高自己的水平!题目在知道题里面,我们要做的不仅仅是单纯的翻转字符我们还需要将这个空格整掉,但是在每一个单词与单词之间我们还要有一个空格,所以我们
  • 2024-04-06红黑树的平衡之道:深入解析右旋操作的原理与实践
    红黑树的平衡之道:深入解析右旋操作的原理与实践一、红黑树旋转的背景二、右旋(RIGHT-ROTATE)的原理三、右旋(RIGHT-ROTATE)的算法步骤四、右旋(RIGHT-ROTATE)的伪代码五、右旋(RIGHT-ROTATE)的C代码实现五、结论红黑树作为一种高效的平衡搜索树,其插入和删除操作的时间复杂度
  • 2024-02-2955. 右旋字符串 C
    #include<stdio.h>voidreverse(char*s,inthead,inttail){while(head<=tail){chartemp=s[head];s[head]=s[tail];s[tail]=temp;head++;tail--;}}chars[10000]={0};intmain(){intk=0;sc
  • 2024-02-24平衡二叉树
    平衡二叉树特点:任意节点左右子树的高度不超过1反例:10节点的左子树高度为0,右子树高度为3这是平衡二叉树这也是平衡二叉树如何保持平衡添加一个节点后,该树不再是平衡二叉树-》旋转左旋,多余左节点做右节点复杂的左旋10的多余左节点9。给予前父节点7作为右节