自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 扑克牌中的顺子

扑克牌中的顺子从扑克牌中随机抽5张牌,判断是不是一个顺子,即这5张牌是不是连续的。2~10为数字本身,A为1,J为11,Q为12,K为13,而大、小王为 0 ,可以看成任意数字。A 不能视为 14。方法一:class Solution: def isStraight(self, nums: List[int]) -> bool: ma,mi=0,14 res=[] for num in nums: if num ==

2021-04-10 23:08:22 175

原创 左旋转字符串

左旋转字符串字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能。比如,输入字符串"abcdefg"和数字2,该函数将返回左旋转两位得到的结果"cdefgab"。方法一:class Solution: def reverseLeftWords(self, s: str, n: int) -> str: lenth=len(s) res=[] for i in range(0,lenth):

2021-04-10 22:12:18 58

原创 翻转单词顺序

翻转单词顺序输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。为简单起见,标点符号和普通字母一样处理。例如输入字符串"I am a student. “,则输出"student. a am I”。方法一:list存储,然后逆向输出listclass Solution: def reverseWords(self, s: str) -> str: str1 =s.strip() str2=str1.split() str2.re

2021-04-10 20:56:40 62

原创 查找list中和为s的两个数字

和为s的两个数字输入一个递增排序的数组和一个数字s,在数组中查找两个数,使得它们的和正好是s。如果有多对数字的和等于s,则输出任意一对即可。class Solution: def twoSum(self, nums: List[int], target: int) -> List[int]: i,j=0,len(nums)-1 while i<j: s= nums[i]+nums[j] if s<t

2021-04-10 18:23:17 73

原创 判断平衡二叉树

平衡二叉树输入一棵二叉树的根节点,判断该树是不是平衡二叉树。如果某二叉树中任意节点的左右子树的深度相差不超过1,那么它就是一棵平衡二叉树。class Solution: def isBalanced(self, root: TreeNode) -> bool: def recur(root): if not root: return 0 left =recur(root.left)

2021-04-10 17:45:05 77

原创 二叉树的深度

二叉树的深度输入一棵二叉树的根节点,求该树的深度。从根节点到叶节点依次经过的节点(含根、叶节点)形成树的一条路径,最长路径的长度为树的深度。方法一:深度遍历class Solution: def maxDepth(self, root: TreeNode) -> int: if not root: return 0 return max(self.maxDepth(root.right),self.maxDepth(root.lef

2021-04-06 23:30:57 68

原创 二叉搜索树的第k大节点

二叉搜索树的第k大节点5/ 3 6/ 2 4/1root = [5,3,6,2,4,null,null,1], k = 3输出:4class Solution: def kthLargest(self, root: TreeNode, k: int) -> int: def dfs(root): if not root or k==0 : return dfs(root.

2021-04-06 23:03:34 41

原创 0~n-1中缺失的数字

0~n-1中缺失的数字一个长度为n-1的递增排序数组中的所有数字都是唯一的,并且每个数字都在范围0~n-1之内。在范围0~n-1内的n个数字中有且只有一个数字不在该数组中,请找出这个数字。方法一:二分法class Solution: def missingNumber(self, nums: List[int]) -> int: i,j=0,len(nums)-1 while i<j: m=(i+j)//2

2021-04-05 18:53:50 76

原创 两个链表的第一个公共节点

输入两个链表,找出它们的第一个公共节点。class Solution: def getIntersectionNode(self, headA: ListNode, headB: ListNode) -> ListNode: a,b=headA,headB while a != b: if a: a=a.next else: a=headB

2021-04-05 18:19:36 43

原创 第一个只出现一次的字符

第一个只出现一次的字符在字符串 s 中找出第一个只出现一次的字符。如果没有,返回一个单空格。 s 只包含小写字母。class Solution: def firstUniqChar(self, s: str) -> str: dic={} for c in s: if c not in dic: dic[c]=1 else: dic[c] +=1

2021-04-04 22:36:46 48

原创 连续子数组的最大和

连续子数组的最大和输入一个整型数组,数组中的一个或连续多个整数组成一个子数组。求所有子数组的和的最大值。要求时间复杂度为O(n)。class Solution: def maxSubArray(self, nums: List[int]) -> int: maxnum=nums[0] for i in range(1,len(nums)): if nums[i-1]>0: nums[i] +=n

2021-04-04 22:10:57 92

原创 最小的k个数

最小的k个数输入整数数组 arr ,找出其中最小的 k 个数。例如,输入4、5、1、6、2、7、3、8这8个数字,则最小的4个数字是1、2、3、4。from typing import List, Tupleimport collectionsfrom collections import dequeclass Solution: def getLeastNumbers(self, arr: List[int], k: int) -> List[int]: def

2021-04-04 11:19:15 67

原创 数组中出现次数超过一半的数字

数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。方法一:摩尔排序法class Solution: def majorityElement(self, nums: List[int]) -> int: votes=0 for num in nums: if votes==0: x=num if num ==x: votes +=1

2021-04-03 23:03:30 56

原创 从上到下打印二叉树

从上到下按层打印二叉树,同一层的节点按从左到右的顺序打印,每一层打印到一行。class Solution: def levelOrder(self, root: TreeNode) -> List[List[int]]: if not root: return [] res,queue=[],collections.deque() queue.append(root) while queue:

2021-04-03 21:45:10 53

原创 顺时针打印矩阵

输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字。class Solution: def spiralOrder(self, matrix: List[List[int]]) -> List[int]: if not matrix: return [] t,l,b,r,res=0,0,(len(matrix)-1),(len(matrix[0])-1),[] while True: f

2021-04-03 10:06:25 50

原创 对称二叉树

请实现一个函数,用来判断一棵二叉树是不是对称的。如果一棵二叉树和它的镜像一样,那么它是对称的。class Solution: def isSymmetric(self, root: TreeNode) -> bool: def recur(l,r): if not l and not r: return True if not l or not r or l.val != r.val: retur

2021-04-02 19:54:25 48

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除