398. Random Pick Index
随机返还target值的坐标(如果存在多个target).
不太明白为什么这个题是M难度的。
无非是要么弄TABLE之类的,开始麻烦点,但是pick的时候直接PICK出来就行了。
要么开始简单点,都存了,选的时候再随机选。
前者各种溢出。。貌似memory在leetcode比较值钱。。就用后者
public class Solution
{int[] nums;public Solution(int[] nums) {this.nums = nums;}public int pick(int target) {int i = 0;while(nums[i] != target) i++;int start = i;while(i < nums.length && nums[i] == target) i++;Random rdm = new Random();return start + rdm.nextInt(i-start);}
}
有一种思路挺逗的:
public class Solution {int[] nums;Random r;public Solution(int[] nums) {this.nums = nums;r = new Random();}public int pick(int target) {int size = nums.length;int i = r.nextInt(size);while (nums[i] != target) {i = r.nextInt(size);}return i;}
}
无限随机选,选到为止。。。这样确实概率是一样的,不过总觉得很奇怪的样子。。。
转载于:https://www.cnblogs.com/reboot329/p/5868202.html
398. Random Pick Index相关推荐
- 398. Random Pick Index - LeetCode
为什么80%的码农都做不了架构师?>>> Question 398. Random Pick Index Solution 思路:重点是如果数据中有多个数target相等,要从 ...
- leetcode 398. Random Pick Index | 398. 随机数索引(Java)
题目 https://leetcode.com/problems/random-pick-index/ 题解 常规思路,先用 map 存一串,取的时候从 map 对应的串中随机拿一个就 ok. cla ...
- python leetcode 398. Random Pick Index
奇怪的是蓄水池抽样算法无法AC 代码2是蓄水池抽样 class Solution(object):import randomdef __init__(self, nums):""& ...
- LeetCode Random Pick Index(蓄水池抽样算法)
问题:给出一个数组,存在相同的数,随机输出目标数所在的下标 思路:使用蓄水池抽样算法,当第一次找到目标数时,作为选取.接着如果随机数等于0,则选取.在遍历完后,直接返回选取的值 具体代码参考: htt ...
- 710. Random Pick with Blacklist - LeetCode
为什么80%的码农都做不了架构师?>>> Question 710. Random Pick with Blacklist Solution 题目大意:给一个N,表示一个范围[ ...
- leetcode 528. Random Pick with Weight
给一个权重的vector,让你根据权重的概率返回值,返回的值是这些权重的索引. 比如给你一个[1,2]的权重矩阵,1/3的概率返回0,2/3的概率返回1. 等概率函数random只能等概率的一系列数, ...
- 710. Random Pick with Blacklist 黑名单中的随机数(Hard)
1. 描述 给定一个包含 [0,n) 中不重复整数的黑名单 blacklist ,写一个函数从 [0, n) 中返回一个不在 blacklist 中的随机整数. 对它进行优化使其尽量少的调用Math. ...
- 【LeetCode】528. Random Pick with Weight 解题报告(Python)
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 题目地址:https://leetcode.com/problems/random-pi ...
- 取得数组中的随机数random.nextInt(index)
public static void main(String[] args) { int[] tester = {1,2,3,5}; if(tester.length>1){ Random ra ...
最新文章
- 无法解决 equal to 操作中 SQL_Latin1_General_CP1_CI_AS 和 Chinese_PRC_CI_AS 之间的排序规则冲突。...
- 输入有序数组返回下标
- P2012-拯救世界2【EGF】
- 前端入门教程(七)CSS属性设置
- 的电路接法_基本震荡电路知多少,汇总几种震荡电路的接法!
- 输出字符串全排列 c语言,41.输出全排列-题解(C语言代码)
- 安川机器人dx200编程手册_【安川 】一文带了解DX200如何编程(上)
- JEB2.2.7闪退
- eclipse 中使用字符流复制文件乱码解决
- 网络安全(加密技术、数字签名、证书)
- Python中的timezone
- 高斯公式(div:点乘)
- layui 上传图片 返回图片地址
- 计算机c盘中无法搜索文件格式,电脑C盘中programdata文件夹找不到该怎么办
- Java和C++程序员待遇问题
- EDA(数据探索性分析)常用分析手段--数据挖掘稍微进阶篇
- 计算机常用名词及解释
- 中华英才网或被全盘收购:三年对赌将近大限
- php 背景图片上加载设备状态,PHP 将动态图片与固定背景图片合成并添加水印。...
- iPhone摄像头拍照后图像旋转
热门文章
- 【Java Web开发指南】ORM一些基础问题整理
- python【力扣LeetCode算法题库】面试题 01.06-字符串压缩
- 分分钟入门【Nodejs】—初步了解Nodejs
- JAVA怎么创建对象组_java – 如何根据特定字段创建一组有序的对象?
- ios php rsa加密解密,php rsa加密解密使用详解
- python for循环九九乘法表_python—用for循环、while循环和一句话打印九九乘法表
- 使用es6中import和export报错
- bat java cp_批处理中Copy与Xcopy命令的区别小结
- 网络营销外包专员浅析网络营销外包推广运营效果究竟如何?
- 浅析网站地图设置对网站的作用有哪些?