企业网站有百度权重说明,广州市手机网站建设,网站开发女生,左右左右网站1. 59——螺旋矩阵2
给你一个正整数 n #xff0c;生成一个包含 1 到 n2 所有元素#xff0c;且元素按顺时针顺序螺旋排列的 n x n 正方形矩阵 matrix 。
标签#xff1a;数组#xff0c;矩阵#xff0c;模拟
代码#xff1a;
class Solution:def generateMatrix(sel…1. 59——螺旋矩阵2
给你一个正整数 n 生成一个包含 1 到 n2 所有元素且元素按顺时针顺序螺旋排列的 n x n 正方形矩阵 matrix 。
标签数组矩阵模拟
代码
class Solution:def generateMatrix(self, n: int) - List[List[int]]:matrix []for i in range(n):matrix.append([0] * n)top 0bottom n - 1left 0right n - 1num 1while num n*n:for i in range(left, right 1):matrix[top][i] numnum num 1top top 1for i in range(top, bottom 1):matrix[i][right] numnum num 1right right - 1for i in range(right, left - 1, -1):matrix[bottom][i] numnum num 1bottom bottom - 1for i in range(bottom, top - 1, -1):matrix[i][left] numnum num 1left left 1return matrix
2. 60——排列序列
给出集合 [1,2,3,...,n]其所有元素共有 n! 种排列。按大小顺序列出所有排列情况并一一标记当 n 3 时, 所有排列如下
123132213231312321
给定 n 和 k返回第 k 个排列。
标签递归数学
代码
class Solution:def getPermutation(self, n: int, k: int) - str:def fun(nums):n len(nums) - 1while n 0:if nums[n - 1] nums[n]:n n - 1else:breakidx1 n - 1num1 nums[idx1]n len(nums) - 1while n idx1:if nums[n] num1:n n - 1else:breakidx2 nnum2 nums[idx2]nums[idx1], nums[idx2] num2, num1left idx1 1right len(nums) - 1while left right:nums[left], nums[right] nums[right], nums[left]left left 1right right - 1return numsnums []res for i in range(n):nums.append(i 1)i 1while i k:nums fun(nums)i i 1for i in nums:res res str(i)return res
3. 61——旋转链表
给你一个链表的头节点 head 旋转链表将链表每个节点向右移动 k 个位置。
标签链表双指针
代码
# Definition for singly-linked list.
# class ListNode:
# def __init__(self, val0, nextNone):
# self.val val
# self.next next
class Solution:def rotateRight(self, head: Optional[ListNode], k: int) - Optional[ListNode]:pointer headleng 0while pointer:leng leng 1pointer pointer.nextif leng 0 or leng 1:return headif k 0 or k % leng 0:return headk k % leng # 向右移动k次对应倒数第k个结点会是新的头结点pointer headwhile k:pointer pointer.nextk k - 1pointer1 headwhile pointer.next:pointer1 pointer1.nextpointer pointer.nextres pointer1.nextpointer1.next Nonepointer.next headreturn res