From 1ecf39adeb2a604ad99cd3a3a54500100b2feb91 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=BD=A9=E8=BE=95=E9=BE=99=E5=84=BF?= Date: Tue, 1 Mar 2022 16:48:48 +0800 Subject: [PATCH] =?UTF-8?q?BM2=20=E9=93=BE=E8=A1=A8=E5=86=85=E6=8C=87?= =?UTF-8?q?=E5=AE=9A=E5=8C=BA=E9=97=B4=E5=8F=8D=E8=BD=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- BM/reverseBetween.py | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 BM/reverseBetween.py diff --git a/BM/reverseBetween.py b/BM/reverseBetween.py new file mode 100644 index 0000000..87dbd57 --- /dev/null +++ b/BM/reverseBetween.py @@ -0,0 +1,40 @@ +#!/usr/bin/env python3 +# @author 轩辕龙儿 +# @date 2022/3/1 +# @file reverseBetween.py + +# class ListNode: +# def __init__(self, x): +# self.val = x +# self.next = None +# +# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 +# +# +# @param head ListNode类 +# @param m int整型 +# @param n int整型 +# @return ListNode类 +# +from common import ListNode + + +class Solution: + def reverseBetween(self, head: ListNode, m: int, n: int) -> ListNode: + if m == n: + return head + pre = ListNode + cur = head + pre.next = cur + for i in range(m - 1): + pre = pre.next + cur = cur.next + for i in range(n - m): + nxt = cur.next + cur.next = nxt.next + nxt.next = pre.next + pre.next = nxt + if m == 1: + return pre.next + else: + return head