colie
colie
全部文章
题解
未归档(29)
归档
标签
去牛客网
登录
/
注册
coding -> poetry
全部文章
/ 题解
(共59篇)
题解 | #树的子结构#
【剑指offer】树的子结构(python) 遍历二叉树A,如果有和二叉树B相同的结点,再进行进一步判断。 进一步判断结构是否相同。如果结点值相同,递归判断它们各自的左右结点值是不是相同。递归终止条件是到达了树A或树B的叶节点。如果树B为空,遍历完了,说明是树A的子树,如果树A为空,说明树B结构大...
树
2021-04-14
0
419
题解 | #二叉树的下一个结点#
【剑指offer】二叉树的下一个结点(python) 分两种情况,一个是当前结点有右子树,一个是当前结点没有右子树。有右子树:返回该右子树的最左结点,往左遍历即可没有右子树:向上找父节点,该父节点的左孩子需等于当前结点,当前结点向上遍历。 class Solution: def GetNex...
树
2021-04-14
0
402
题解 | #重建二叉树#
【剑指offer】重建二叉树(python) 记住没有中序遍历结果是不能重建二叉树的! 二叉树的左中后遍历顺序。前序遍历:根结点 ---> 左子树 ---> 右子树中序遍历:左子树---> 根结点 ---> 右子树后序遍历:左子树 ---> 右子树 ---> 根...
树
递归
2021-04-14
0
378
题解 | #两个链表的第一个公共结点#
【剑指offer】两个链表的第一个公共结点(python) 纪念一下,第一次一遍过!很棒,加油!思路是双指针,一个遍历链表1,一个遍历链表2,需要注意的是指针复制的地方,链表2的指针是外部的,不需要复制,遍历到尾部就拉倒了,但是链表1的指针是内部的,需要复制,复制的地方在外循环内、内循环外。 # c...
链表
2021-04-14
0
457
题解 | #复杂链表的复制#
【剑指offer】复杂链表的复制(python) 递归终止条件。if pHead is None: return # -*- coding:utf-8 -*- # class RandomListNode: # def __init__(self, x): # self.la...
链表
2021-04-14
0
366
题解 | #合并两个排序的链表#
【剑指offer】合并两个排序的链表(python) 一开始的想法是将两个链表都放到一个数组里,排序后再建成一个链表,但是python列表不能对两个链表节点进行大小比较,所以还是用传统思路,依次比较两个链表节点的大小,接到答案链表里,最后剩下的部分直接接上。 # -*- coding:utf-8 -...
链表
2021-04-14
0
563
题解 | #反转链表#
【剑指offer】反转链表(python) 由列表构建链表的步骤首先,头结点 head = ListNode(0),这里 0 是随便赋值的,返回值不会包含。然后,指针指向头结点 pre = head然后,指针逐个向后node = ListNode(i)pre.next = nodepre = pr...
链表
2021-04-14
0
494
题解 | #链表中环的入口结点#
【剑指offer】链表中环的入口结点(python) p=pHead,复制一份链表 python列表可以直接用 for i in list,其中 i 就是列表中的元素,不一定非要遍历索引# class ListNode: # def __init__(self, x): # ...
链表
2021-04-14
0
385
题解 | #链表中倒数第k个结点#
【剑指offer】链表中倒数第K个结点(python) 我的思路是先遍历链表得到链表长度length,同时复制一份链表(不需要复制链表,只需要tmp=pHead,指向一块内存就行),因为遍历后指针指向链表末尾(pHead指针指向末尾,tmp还在开头),然后数tmp链表到第length-k个结点。链表...
链表
2021-04-14
0
501
题解 | #删除链表中重复的结点#
【剑指offer】删除链表中重复的结点(python) 把所有值放到一个列表中,筛选出只出现一次的 遍历链表 while pHead: res.append(pHead.val) pHead = pHead.next 【初始思路,删除重复的】,让列表删除多个数 list = [...
链表
2021-04-14
1
521
首页
上一页
1
2
3
4
5
6
下一页
末页