![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Python学习
bututou的禾几
这个作者很懒,什么都没留下…
展开
-
剑指 Offer 32 - II. 从上到下打印二叉树 II
从上到下按层打印二叉树,同一层的节点按从左到右的顺序打印,每一层打印到一行。例如: 给定二叉树: [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回其层次遍历结果:[ [3], [9,20], [15,7]]解题思路: 使用队列,进行层次遍历代码如下:# Definition for a binary tree node.# class TreeNode:# def __init__(原创 2021-01-04 11:43:32 · 80 阅读 · 0 评论 -
剑指 Offer 54. 二叉搜索树的第k大节点
给定一棵二叉搜索树,请找出其中第k大的节点。示例1:输入: root = [3,1,4,null,2], k = 1 3 / \ 1 4 \ 2输出: 4示例2:输入: root = [5,3,6,2,4,null,null,1], k = 3 5 / \ 3 6 / \ 2 4 / 1输出: 4解题思想: 中序遍历(左子树-根-右子树)结果恰好是从小到大的排序,右子树-根-左子树遍历结果恰好是从原创 2020-12-22 19:37:28 · 77 阅读 · 0 评论 -
剑指 Offer 58 - II. 左旋转字符串
字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能。比如,输入字符串"abcdefg"和数字2,该函数将返回左旋转两位得到的结果"cdefgab"。示例1:输入: s = "abcdefg", k = 2输出: "cdefgab"示例2:输入: s = "lrloseumgh", k = 6输出: "umghlrlose"解题思路: 把字符串根据指定位置分为左右两部分,左右颠倒输出。代码如下:class Solution:原创 2020-12-21 20:34:39 · 68 阅读 · 0 评论 -
283. 移动零
给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。示例:输入: [0,1,0,3,12]输出: [1,3,12,0,0]说明:1、必须在原数组上操作,不能拷贝额外的数组。2、尽量减少操作次数。解题思想1:先把所有的0删除,同时统计删除的0的个数,把0补在最后。class Solution: def moveZeroes(self, nums: List[int]) -> None: """ Do n原创 2020-12-21 18:22:49 · 86 阅读 · 0 评论 -
剑指 Offer 53 - II. 0~n-1中缺失的数字
一个长度为n-1的递增排序数组中的所有数字都是唯一的,并且每个数字都在范围0~n-1之内。在范围0~n-1内的n个数字中有且只有一个数字不在该数组中,请找出这个数字。示例1:输入: [0,1,3]输出: 2示例2:输入: [0,1,2,3,4,5,6,7,9]输出: 8限制:1 <= 数组长度 <= 10000算法思想: 对0~n-1个数字求和,再将数组中数字进行求和,两者之差即为缺失的数字。代码如下:class Solution: def missingNu原创 2020-12-09 17:17:43 · 114 阅读 · 1 评论 -
剑指 Offer 53 - I. 在排序数组中查找数字 I
统计一个数字在排序数组中出现的次数。示例1:输入: nums = [5,7,7,8,8,10], target = 8输出: 2示例2:输入: nums = [5,7,7,8,8,10], target = 6输出: 0思路1: 暴力解法,顺序遍历数组。代码如下:class Solution: def search(self, nums: List[int], target: int) -> int: sum=0 n=len(nums)原创 2020-12-09 16:57:55 · 61 阅读 · 0 评论 -
剑指 Offer 05. 替换空格
剑指offer05-替换空格题目描述: 请实现一个函数,把字符串 s 中的每个空格替换成"%20"。示例:输入:s = "We are happy."输出:"We%20are%20happy."思路: 将利用函数直接将空格替换LeetCode代码:class Solution: def replaceSpace(self, s: str) -> str: return s.replace(" ","%20")注1:如果不用return 而是直接使用~s.re原创 2020-11-20 16:53:23 · 83 阅读 · 0 评论 -
剑指offer03-数组中重复的数字
剑指offer03-数组中重复的数字在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。算法思想: 先对数组进行排序,排序之后遍历数组,如果有相邻的数字是相同的,则返回。LeetCode代码:class Solution: def findRepeatNumber(self, nums: List[int]) -> int: nums.s原创 2020-11-20 15:11:46 · 110 阅读 · 0 评论 -
Python运行闪退问题
Python文件闪退问题当我们完成一个Python程序,生成了py文件之后,点击运行该文件,通常会出现闪退问的情况。解决方法:在源文件后面加上等待输入函数"input()"结果显示如下:...原创 2018-12-17 18:26:44 · 30214 阅读 · 4 评论