牛客513758号
牛客513758号
全部文章
题解
归档
标签
去牛客网
登录
/
注册
牛客513758号的博客
全部文章
/ 题解
(共27篇)
题解 | #数组中的最长连续子序列# python
关键点 找到最长子序列的起始数。通过判断当前值的前一个数判断这个数是不是起始数 找到起始数后,依次加1,判断是否在哈希集合中,如果不在则跳出 计算长度考虑边界条件,如果是左边界闭区间,则需要减去起始数后加1,否则直接相减 # # max increasing subsequence # @par...
2021-07-03
0
910
题解 | #链表的奇偶重排#
线性扫描链表 当前为奇数时,加入奇数链表odd 当前为偶数时,加入偶数链表 将偶数的最后一个节点断开,避免构成环导致无限循环 class Solution: def oddEvenList(self , head ): # write code here ...
2021-06-13
0
530
题解 | #三个数的最大乘积#
线性扫描保存最大的三个和最小的两个数 均为正数时,最大的三个数相乘为最大 当含有两个最大负数时,再乘以最大正数为最大乘积 class Solution: def solve(self, A): # write code here max1 = max2 =...
2021-06-13
0
564
题解 | #二叉树的中序遍历#
# class TreeNode: # def __init__(self, x): # self.val = x # self.left = None # self.right = None # # 代码中的类名、方法名、参数名已经指定,请勿...
2021-06-13
0
486
题解 | #最大数#
python3解法利用现有库将conpare转为key from functools import cmp_to_key python2 修改比较大小的计算方法,例如ab拼接后的大小关系,逆序所以是ba-ab 考虑数组含有多个0的特殊情况,如果nums长度大于1,那么第一个数不能是0 # # 最...
2021-06-13
0
477
题解 | #链表内指定区间反转#
注意 m== 1 和n == 1是停止条件而非0 由于是翻转m和n之间的节点,所以需要记录n + 1个节点,翻转以后连起来 # class ListNode: # def __init__(self, x): # self.val = x # self.n...
2021-06-13
0
503
超100% 时间题解 | #顺时针旋转矩阵#
首先水平中轴翻转然后再沿正对角线翻转 class Solution: def rotateMatrix(self, mat, n): # write code here # for i in range(n//2): ...
2021-06-13
0
601
基于交换题解 | #有重复项数字的所有排列#
基于回溯法的交换为了避免重复,每次创建一个集合来统计当前交换数是否已经交换过,交换过就跳过 # # # @param num int整型一维数组 # @return int整型二维数组 # class Solution: def backtrack(self, num, level, a...
2021-06-13
0
615
题解 | #螺旋矩阵#
该方法主要是容易避免考虑太细的边界问题每次走完当前边,然后将边界值缩小/扩大1。然后判断边界是否遍历完,遍历完即退出循环 # # # @param matrix int整型二维数组 # @return int整型一维数组 # class Solution: def spiralOrder...
2021-06-12
1
499
题解 | #单链表的排序#
遍历链表的值用数组保存,然后修改链表的数值 # class ListNode: # def __init__(self, x): # self.val = x # self.next = None # # # @param head ListNode类 t...
2021-06-12
0
487
首页
上一页
1
2
3
下一页
末页