美文网首页
398.leetcode题目讲解(Python):随机数索引(R

398.leetcode题目讲解(Python):随机数索引(R

作者: 夏山闻汐 | 来源:发表于2019-05-08 12:40 被阅读0次

题目

题目

解题思路

这道题比较简单,有两种解题思路:

解法一

遍历nums,记录索引位置,然后通过random.sample() 返回一个结果。(beats 50%)

解法二

计算目标在nums中的个数 e,然后通过random.randint(1, e) 随机选出“第i个”目标,然后在nums列表中顺序 “数数”,数到“第i个”目标就返回其索引。(beats 100%)

参考代码

'''
@auther: Jedi.L
@Date: Wed, May 8, 2019 11:11
@Email: xiangyangan@gmail.com
@Blog: www.tundrazone.com
'''

import random

# beats 100%
class Solution1:
    def __init__(self, nums):
        self.nums = nums

    def pick(self, target):
        e = self.nums.count(target)
        # ranodom select the i-th object 
        i = random.randint(1, e)
        # count 1 to i
        for j in range(len(self.nums)):
            if self.nums[j] == target:
                i = i - 1
                if i = 0:
                    return j

# beats 50%
class Solution2:
    def __init__(self, nums):
        self.nums = nums

    def pick(self, target):
        candid =[]
        for i in range(len(self.nums)):
            if self.nums[i] == target:
                candid.append(i)
        return random.sample(candid, 1)



如何刷题 : Leetcode 题目的正确打开方式

我的GitHub : GitHub

其他题目答案:leetcode题目答案讲解汇总(Python版 持续更新)

其他好东西: MyBlog----苔原带

相关文章

  • 398.leetcode题目讲解(Python):随机数索引(R

    题目 解题思路 这道题比较简单,有两种解题思路: 解法一 遍历nums,记录索引位置,然后通过random.sam...

  • python学习_01

    python的数字类型、字符串、索引、切片讲解 python的数据类型 【重点学习】字符串【表示、索引、切片、内置...

  • R语言 | 数据索引

    索引即提取/查询数据集中想要的数据,与Python类似,R语言提供位置索引与名称索引两种索引体系。由于数据索引是基...

  • 转置矩阵

    题目: 题目的理解: 创建一个二维数组,保存交换行索引和列索引后的值。 python实现 提交 // END 多动...

  • python数据分析(五)--Pandas

    Series类型:由一组数据与之相对应的索引组成使用:(python列表创建)自动索引:d=pd.Series(r...

  • 讲解:Analytics、SQL/R/Python、Python

    Airbnb Take Home Challenge for Data Scientist (Analytics)...

  • python随机数生成

    Python中的random模块用于生成随机数。下面介绍一下random模块中最常用的几个函数。 random.r...

  • Python中的随机数

    Python中的random模块用于生成随机数。下面介绍一下random模块中最常用的几个函数。 random.r...

  • python: random模块

    Python中的random模块用于生成随机数。下面介绍一下random模块中最常用的几个函数。 random.r...

  • Python的random

    Python中的random模块用于生成随机数。下面介绍一下random模块中最常用的几个函数。 random.r...

网友评论

      本文标题:398.leetcode题目讲解(Python):随机数索引(R

      本文链接:https://www.haomeiwen.com/subject/uhdmoqtx.html