热题系列章节20

embedded/2024/9/23 9:15:56/

25. K 个一组翻转链表

python"># Definition for singly-linked list.
# class ListNode:
#     def __init__(self, val=0, next=None):
#         self.val = val
#         self.next = next
from queue import PriorityQueue
class Solution:def mergeKLists(self, lists: List[Optional[ListNode]]) -> Optional[ListNode]:nums = []for l in lists:while l:nums.append(l.val)l = l.nextnums.sort()cur = head = ListNode(0)for i in nums:cur.next = ListNode(val=i)cur= cur.nextreturn head.next

5. 最长回文子串

33. 搜索旋转排序数组

200. 岛屿数量

92. 反转链表 II

python"># Definition for singly-linked list.
# class ListNode:
#     def __init__(self, val=0, next=None):
#         self.val = val
#         self.next = next
class Solution:def mergeTwoLists(self, list1: Optional[ListNode], list2: Optional[ListNode]) -> Optional[ListNode]:head=ListNode(0)# 创建一个指针用于遍历合并链表current=head# 当两个链表同时都有节点时while list1 and list2:# 如果链表l1节点的值>=l2节点的值,将l2当前节点赋予current的下一个节点# 将l2指向其下一个节点if list1.val>=list2.val:current.next=list2list2=list2.nextelse:current.next=list1list1=list1.nextcurrent=current.next# 将剩余部分连接到合并链表的末尾current.next= list1 if list1 else list2return head.next

23. 合并K个排序链表

python"># Definition for singly-linked list.
# class ListNode:
#     def __init__(self, val=0, next=None):
#         self.val = val
#         self.next = next
from queue import PriorityQueue
class Solution:def mergeKLists(self, lists: List[Optional[ListNode]]) -> Optional[ListNode]:nums = []for l in lists:while l:nums.append(l.val)l = l.nextnums.sort()cur = head = ListNode(0)for i in nums:cur.next = ListNode(val=i)cur= cur.nextreturn head.next

143. 重排链表

python">class Solution(object):def reorderList(self, head):""":type head: ListNode:rtype: None Do not return anything, modify head in-place instead."""if not head or not head.next: return head# 1 2 3 4 5fast = headpre_mid = head# 找到中点, 偶数个找到时上界那个while fast.next and fast.next.next:pre_mid = pre_mid.nextfast = fast.next.next# 翻转中点之后的链表,采用是pre, cur双指针方法pre = Nonecur = pre_mid.next# 1 2 5 4 3while cur:tmp = cur.nextcur.next = prepre = curcur = tmp# 翻转链表和前面链表拼接pre_mid.next = pre# 1 5 2 4 3# 链表头p1 = head# 翻转头p2 = pre_mid.next#print(p1.val, p2.val)while p1 != pre_mid:# 建议大家这部分画图, 很容易理解pre_mid.next = p2.nextp2.next = p1.nextp1.next = p2p1 = p2.nextp2 = pre_mid.next

124. 二叉树中的最大路径和

python"># Definition for a binary tree node.
# class TreeNode:
#     def __init__(self, val=0, left=None, right=None):
#         self.val = val
#         self.left = left
#         self.right = right
class Solution:def maxPathSum(self, root: Optional[TreeNode]) -> int:self.ans = float("-inf")def maxGain(r):if not r:return 0 left = max(maxGain(r.left), 0) # 注意:这里的需要保存大于0 的根right = max(maxGain(r.right), 0)self.ans = max(self.ans, r.val+left+right) # 不然遇到[2,-1]的情况会出错return r.val+max(left, right)maxGain(root)return self.ans 

补充题23. 检测循环依赖

468. 验证IP地址


http://www.ppmy.cn/embedded/115516.html

相关文章

python异常处理知识简记

简单记录一下python异常处理的基本知识点 一、错误类型 1)AssertionError:断言语句(assert)失败 2)AttributeError:尝试访问未知的对象属性 3)IndexError:索引超出序列的范围 4…

《机器人SLAM导航核心技术与实战》第1季:第9章_视觉SLAM系统

视频讲解 【第1季】9.第9章_视觉SLAM系统-视频讲解 【第1季】9.1.第9章_视觉SLAM系统_ORB-SLAM2算法(上)-视频讲解 【第1季】9.1.第9章_视觉SLAM系统_ORB-SLAM2算法(下)-视频讲解 【第1季】9.2.第9章_视觉SLAM系统_LSD-SLAM算法…

聚焦API安全未来,F5打造无缝集成的解决方案

研究发现,目前超过90%的基于Web的网络攻击都以API端点为目标。随着对API使用需求的增加,这些攻击还会持续增长。现代企业需要一种动态防御策略,在风险升级成代价高昂、令人警惕且往往无法预防的API安全漏洞之前,发现并降低风险。 …

队列+宽搜专题篇

目录 N叉树的层序遍历 二叉树的锯齿形层序遍历 二叉树最大宽度 在每个树行中找最大值 N叉树的层序遍历 题目 思路 使用队列层序遍历来解决这道题,首先判断根节点是否为空,为空则返回空的二维数组;否则,就进行层序遍历&#x…

Android-UI设计

控件 控件是用户与应用交互的元素。常见的控件包括: 按钮 (Button):用于执行动作。文本框 (EditText):让用户输入文本。复选框 (CheckBox):允许用户选择或取消选择某个选项。单选按钮 (RadioButton):用于在多个选项中…

计算机网络-小型综合网络的搭建涉及到无线路由交换安全

目录 1 拓扑架构 2 做项目的思路 3 做配置 3.1先做核心交换 3.2 防火墙的配置 4 ac 和ap 的配置 4.1 ac上配置安全的东西 5.1 测试​编辑 1 拓扑架构 要求看上面的图 2 做项目的思路 这张网很明显是一个小综合,设计到我们的无线交换,路由…

研究生第一次刷力扣day1

1.给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出和为目标值target 的那两个整数,并返回它们的数组下标 直接采用暴力求解,其他解答案看不懂 大致思想:先用len函数求出数组的长度n,然后一个个遍…

Java--File

FIle 概述 File的构造方法 > 1. 一个File对象代表硬盘中实际存在的一个文件或者目录。 > 2. 无论该路径下是否存在文件或者目录,都不影响File对象的创建。 代码演示: // 文件路径名 String pathname "D:\\aaa.txt"; File file1 new …