Rileyang
码龄5年
关注
提问 私信
  • 博客:6,506
    6,506
    总访问量
  • 39
    原创
  • 1,361,381
    排名
  • 0
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:陕西省
  • 加入CSDN时间: 2019-06-20
博客简介:

Rileybot x

查看详细资料
个人成就
  • 获得5次点赞
  • 内容获得0次评论
  • 获得5次收藏
创作历程
  • 31篇
    2020年
  • 8篇
    2019年
成就勋章
TA的专栏
  • Leetcode解题报告
    25篇
  • 剑指offer刷题记录
    9篇
  • 零碎代码笔记
    4篇
创作活动更多

AI大模型如何赋能电商行业,引领变革?

如何使用AI技术实现购物推荐、会员分类、商品定价等方面的创新应用?如何运用AI技术提高电商平台的销售效率和用户体验呢?欢迎分享您的看法

175人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

leetcode#209. 长度最小的子数组(中等)

题目描述给定一个含有 n 个正整数的数组和一个正整数 s ,找出该数组中满足其和 ≥ s 的长度最小的连续子数组,并返回其长度。如果不存在符合条件的连续子数组,返回 0。题目地址:https://leetcode-cn.com/problems/minimum-size-subarray-sum方法:双指针/滑动窗口第一种是每个循环计算窗口内元素之和,根据和与s的大小关系改变窗口大小。耗时久class Solution: def minSubArrayLen(self, s: int,
原创
发布博客 2020.05.24 ·
168 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

leetcode#485. 最大连续1的个数

题目描述给定一个二进制数组, 计算其中最大连续1的个数。方法一:设置计数每遇到1,计数家一,遇到0计数置零,更新结果为最大的计数。class Solution: def findMaxConsecutiveOnes(self, nums: List[int]) -> int: ans, count = 0, 0 for i in range(len(nums)): if nums[i] == 1:
原创
发布博客 2020.05.24 ·
230 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

leetcode#136.只出现一次的数字

题目描述给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?要点分析不考虑额外空间限制的条件可以有三种解法:遍历数组,用HashMap记录每个元素出现的次数;遍历HAshMap找出只出现了一次的那个。利用集合去重,因为每个其他元素都出现两次,则对集合求和*2 - 数组求和 = 出现一次的元素。遍历数组,用另一个集合记录元素,当集合中已存在该元素时删去,最后剩下的即为所求元
原创
发布博客 2020.05.23 ·
164 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

leetcode#118. 杨辉三角

题目描述给定一个非负整数 numRows,生成杨辉三角的前 numRows 行。题目地址:https://leetcode-cn.com/problems/pascals-triangle/要点分析每一行的头和尾元素均初始化为1;中间元素由上层[i-1][j-1]+[i-1][j]构成;运用动态规划思想通过前层生成后层,构造一个ans=[ ]用来存储结果,每一层的结果append到ans中,numRows=0时不执行循环直接返回ans=[ ];每行的长度可以预先确定。class So
原创
发布博客 2020.05.22 ·
164 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

leetcode#54. 螺旋矩阵(中等)

题目描述给定一个包含 m x n 个元素的矩阵(m 行, n 列),请按照顺时针螺旋顺序,返回矩阵中的所有元素。题目地址:https://leetcode-cn.com/problems/spiral-matrix/要点分析需要转变方向右两种情况,一是下一步超越矩阵边界,二是下一步到达已遍历的元素,排除掉这两种情况即可;转变方向可以通过实现方向数组,对已遍历的的元素进行标记;class Solution: def spiralOrder(self, matrix: List[Lis
原创
发布博客 2020.05.22 ·
210 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

leetcode498. 对角线遍历(中等)

给定一个含有 M x N 个元素的矩阵(M 行,N 列),请以对角线遍历的顺序返回这个矩阵中的所有元素,对角线遍历如下图所示。说明:给定矩阵中的元素总数不会超过 100000 。题目链接:https://leetcode-cn.com/problems/diagonal-traverse/方法一找对角线的规律,以自右上向左下的对角为例,元素坐标逐个[i+1][j-1];对角线方向互相交替,统一按照统一方向提取,奇数组并入结果前先进行翻转。代码实现:外层循环遍历所有对角线内层循环根
原创
发布博客 2020.05.22 ·
260 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

leetcode#66. 加一

题目描述给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。最高位数字存放在数组的首位, 数组中每个元素只存储单个数字。你可以假设除了整数 0 之外,这个整数不会以零开头。方法一:按照数组倒序,若当前位+1小于九,直接返回当前数组;大于9则当前位置零,判断高一位的情况。class Solution: def plusOne(self, digits: List[int]) -> List[int]: # 倒序向数组元素+1 # for
原创
发布博客 2020.05.22 ·
100 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

leetcode#747. 至少是其他数字两倍的最大数

题目描述在一个给定的数组nums中,总是存在一个最大元素 。查找数组中的最大元素是否至少是数组中每个其他数字的两倍。如果是,则返回最大元素的索引,否则返回-1。提示:nums 的长度范围在[1, 50].每个 nums[i] 的整数范围在 [0, 100].题目地址:https://leetcode-cn.com/problems/largest-number-at-least-twice-of-others/方法一:参考文档Created with Raphaël 2.2.0输入数
原创
发布博客 2020.05.22 ·
133 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

leetcode#724. 寻找数组的中心索引

题目描述给定一个整数类型的数组 nums,请编写一个能够返回数组“中心索引”的方法。我们是这样定义数组中心索引的:数组中心索引的左侧所有元素相加的和等于右侧所有元素相加的和。如果数组不存在中心索引,那么我们应该返回 -1。如果数组有多个中心索引,那么我们应该返回最靠近左边的那一个。注意:nums 的长度范围为 [0, 10000]。任何一个 nums[i] 将会是一个范围在 [-1000, 1000]的整数。要点分析左侧和右侧元素相加时,均不包括中心索引的元素;要擅于利用数学关系:
原创
发布博客 2020.05.22 ·
132 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

leetcode#999. 可以被一步捕获的棋子数

题目描述解法一题目描述一大串乍一看十分唬人,其实就是棋盘内一个车(R)有上下左右四个可移动方向,对每个方向的卒(p)进行捕获,但在遇到象(B)或到达棋盘边缘时终止该方向的移动,求四个方向一共可以捕获到几个卒。class Solution: def numRookCaptures(self, board: List[List[str]]) -> int: # 找...
原创
发布博客 2020.03.27 ·
154 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

leetcoede#836. 矩形重叠

题目描述法一:判断不重叠的情况class Solution: def isRectangleOverlap(self, rec1: List[int], rec2: List[int]) -> bool: x1_1,y1_1,x1_2,y1_2 = rec1 x2_1,y2_1,x2_2,y2_2 = rec2 if x2_2&l...
原创
发布博客 2020.03.18 ·
128 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

leetcode#1160. 拼写单词

题目描述分别统计单词中各个字母的次数class Solution: def countCharacters(self, words: List[str], chars: str) -> int: chars_1 = list(chars[:]) chars_1.set() # chars去重 dic_char={} ...
原创
发布博客 2020.03.17 ·
103 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

leetcode#169. 多数元素

题目描述给定一个大小为 n 的数组,找到其中的多数元素。多数元素是指在数组中出现次数大于 ⌊ n/2 ⌋ 的元素。你可以假设数组是非空的,并且给定的数组总是存在多数元素。解法一:count()函数class Solution: def majorityElement(self, nums: List[int]) -> int: n = len(nums)/2...
原创
发布博客 2020.03.13 ·
99 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

leetcode#1071. 字符串的最大公因子

题目描述观察最大公因数的性质若两个字符串前后拼接相等时,表示他们分别由若干个公因子拼接而成,否则不成立。且有,最大公因子长度等于两个字符串长度的最大公因数。证明可见官方题解:官方题解class Solution: def gcdOfStrings(self, str1: str, str2: str) -> str: # 判断无解 if st...
原创
发布博客 2020.03.12 ·
111 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

leetcode#1013. 将数组分成和相等的三个部分

题目描述解法:双指针+一点技巧class Solution: def canThreePartsEqualSum(self, A: List[int]) -> bool: sum = 0 if A == []: return 0 for a in A: sum += a ...
原创
发布博客 2020.03.11 ·
147 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

leetcode#543. 二叉树的直径

题目描述给定一棵二叉树,你需要计算它的直径长度。一棵二叉树的直径长度是任意两个结点路径长度中的最大值。这条路径可能穿过根结点。递归max(左子树直径, 右子树直径, 左子树+右子树)# Definition for a binary tree node.# class TreeNode:# def __init__(self, x):# self.val = ...
原创
发布博客 2020.03.10 ·
94 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

leetcode#121. 买卖股票的最佳时机

题目描述给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。如果你最多只允许完成一笔交易(即买入和卖出一支股票),设计一个算法来计算你所能获取的最大利润。注意你不能在买入股票前卖出股票。解:动态规划class Solution: def maxProfit(self, prices: List[int]) -> int: if prices==...
原创
发布博客 2020.03.09 ·
94 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

leetcode#322. 零钱兑换(中等)

题目描述零钱兑换给定不同面额的硬币 coins 和一个总金额 amount。编写一个函数来计算可以凑成总金额所需的最少的硬币个数。如果没有任何一种硬币组合能组成总金额,返回 -1。解一:动态规划class Solution: def coinChange(self, coins: List[int], amount: int) -> int: # 动态规...
原创
发布博客 2020.03.08 ·
104 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

剑指offer #59 - I. 滑动窗口的最大值

题目描述给定一个数组 nums 和滑动窗口的大小 k,请找出所有滑动窗口里的最大值。解一:列表max()直接用python中求列表最大值的函数max(),注意考虑输入数组为空的边界情况。class Solution: def maxSlidingWindow(self, nums: List[int], k: int) -> List[int]: ans =...
原创
发布博客 2020.03.07 ·
105 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

剑指offer #57 - II 和为s的连续正数序列

题目来源输入一个正整数 target ,输出所有和为 target 的连续正整数序列(至少含有两个数)。序列内的数字由小到大排列,不同序列按照首个数字从小到大排列。双指针(滑动窗口)法与第一问中类似的做法,只是该问的指针起始相邻。当其间元素之和等于target,保留至结果列表中;小于target,右移右指针(做加法);大于时,右移左指针(做减法)。结束条件:左指针 > 右指针...
原创
发布博客 2020.03.06 ·
92 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多