LeetCode收录了许多互联网公司的算法题目,被称为刷题神器。最近在剑指Offer上也刷了一些题目,发现涉及到数据结构类的题目,比如说“树”、“链表"这种题目,如果想在本地IDE进行测试,除了完成题目要求的算法外,还需要写一些辅助函数,比如树的创建,遍历等,由于这些函数平时用到的地方比较多,并且也... ...
分类:
其他好文 时间:
2020-01-03 21:29:42
阅读次数:
83
三、编码技巧 1、遍历链表 先将 指针赋值给一个局部变量 : 当然也可以写为: 2、通过传递 改变某个指针 看个例子: 这块的思想是和(一)中的 类似。 内存示意图: 3、通过 建立链表(头插法) 这种方式的优点是速度飞快,简单易行,缺点是得到的链表是逆序的: 6、临时节点建立 7、本地指针建立 这 ...
分类:
其他好文 时间:
2020-01-01 23:43:41
阅读次数:
91
创建节点 <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" con ...
分类:
Web程序 时间:
2020-01-01 14:52:56
阅读次数:
86
二叉排序树定义 一棵空树,或者是具有下列性质的二叉树:(1)若左子树不空,则左子树上所有结点的值均小于它的根结点的值;(2)若右子树不空,则右子树上所有结点的值均大于它的根结点的值;(3)左、右子树也分别为二叉排序树;(4)没有键值相等的结点。 二叉树删除节点 二叉排序树删除节点的时候为其删除后还是 ...
分类:
其他好文 时间:
2019-12-29 18:41:47
阅读次数:
70
删除单向链表中的某个节点 链表的节点删除 在删除链表的节点步骤如下: 1.找到被删除节点的前面一个节点 2.将前面节点的next节点改成下一个节点 3.将被删除节点的内存释放 接下来我们来考虑一道leetcode题: 237. Delete Node in a Linked List Write a ...
分类:
其他好文 时间:
2019-12-28 18:59:12
阅读次数:
123
??本次部分没有带题目,因为链表系列的题目有的非常直观,从名字中就能知道到底需要做什么。 21. 合并两个有序链表 203. 移除链表元素 206. 反转链表 24. 两两交换链表中的节点 19. 删除链表的倒数第N个节点 876. 链表的中间结点 ...
分类:
其他好文 时间:
2019-12-21 09:55:48
阅读次数:
67
有时临时在 docker swarm 集群上增加节点,过后需要删除节点 ...
分类:
其他好文 时间:
2019-12-16 14:58:12
阅读次数:
320
一般来说,删除节点可分为两个步骤: 首先找到需要删除的节点; 如果找到了,删除它。 说明: 要求算法时间复杂度为 O(h),h 为树的高度。 示例: root = [5,3,6,2,4,null,7] key = 3 5 / \ 3 6 / \ \ 2 4 7 给定需要删除的节点值是 3,所以我们首 ...
分类:
其他好文 时间:
2019-12-11 14:44:44
阅读次数:
100
双向链表 首先来分析一个上篇文章中单向链表的缺点: 1. 单向链表查找的方向只能是一个方向,而双向链表可以向前或者向后查找。 2. 单向链表不能自我删除,需要靠辅助节点,而双向链表则可以自我删除。所以前面进行单链表删除的时候,我们总是找到待删除节点的上一个节点。 双向链表也叫双链表,是链表的一种,它 ...
分类:
其他好文 时间:
2019-12-09 21:34:01
阅读次数:
132
题意: t组样例,对于每一组样例第一行输入一个n,下面在输入n个数 你需要从这n个数里面找出来三个数(设为x,y,z),找出来(x+y)^z(同样也可以(y+z)^1)的最大值 (“^”代表异或操作,即“相同为0,不同为1”) 题解: 这一道题和Xor Sum HDU - 4825很相似 因为异或运 ...
分类:
其他好文 时间:
2019-12-07 14:47:26
阅读次数:
97