题解 | #链表内指定区间反转#

链表内指定区间反转

https://www.nowcoder.com/practice/b58434e200a648c589ca2063f1faf58c

# class ListNode:
#     def __init__(self, x):
#         self.val = x
#         self.next = None
#
# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
#
# 
# @param head ListNode类 
# @param m int整型 
# @param n int整型 
# @return ListNode类
#

''' 通过将链表转换到列表中实现切片翻转, 然后再讲结果放到链表中,返回第一个节点'''
class Solution:
    def reverseBetween(self , head: ListNode, m: int, n: int) -> ListNode:
        data = []
        if head ==None:
            return head
        while head:
            data.append(head.val)
            head = head.next
        df = data[0:m-1]+data[m-1:n][::-1]+data[n:]
        res = ListNode(df[0])
        pre = res 
        for i in range(1, len(df)):
            res.next = ListNode(df[i])
            res = res.next
        return pre 



#华为审批#
全部评论

相关推荐

点赞 评论 收藏
分享
评论
点赞
3
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务