- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我有一组 4 个字符串,想生成一个包含 16 个元素的列表,但是执行规则(或获得与执行此类规则相同的结果)永远不会在结果中的两个连续位置重复相同的元素列表。
作为 Python 的新手,我去检查了 random 库中的不同方法,发现了许多不同且有用的方法来做类似的事情(random.shuffle 几乎可以做到),但没有一个解决这个问题我的特殊需要。
我应该使用什么数据格式和什么方法?
最佳答案
伪代码算法:
使用 random.choice
从元素列表中随机选择一个元素。
这是一个概念证明 Python 代码:
import random
sources = ['a', 'b', 'c', 'd'] # you said 4 strings
result = [random.choice(sources)]
while len(result) < 16: # you said you need 16 elements
elem = random.choice(sources)
if elem != result[-1]:
result.append(elem)
这段代码是为了清晰而不是简洁、聪明或速度而优化的。
关于python - 在随机列表生成中强制执行 "no 2 same contiguous elements",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6647174/
题目地址:https://leetcode.com/problems/contiguous-array/description/ 题目描述 Given a binary array, find t
问。给定两个长度相等的数组 A 和 B,找到索引 [i,j] 的最大可能连续子数组,使得 max(A[i: j]) B[j]: Bq.pop() Bq.app
[2018-08-01:在帖子底部附近查看新 Material 。] 我只是遇到了一个Q-n-A here,其中包括一个使用我从未见过的规范引用范围的函数的示例。我试了一下,发现使用这种类型的引用时,
问。给定两个长度相等的数组 A 和 B,找到索引 [i,j] 的最大可能连续子数组,使得 max(A[i: j]) B[j]: Bq.pop() Bq.app
我有一组 4 个字符串,想生成一个包含 16 个元素的列表,但是执行规则(或获得与执行此类规则相同的结果)永远不会在结果中的两个连续位置重复相同的元素列表。 作为 Python 的新手,我去检查了 r
在caffe文档中:http://caffe.berkeleyvision.org/tutorial/net_layer_blob.html Blob storage and communicatio
我拥有的是一张包含数据的工作表,我想定义一个不连续的范围,例如,可用于创建图表。 只要范围是矩形,定义范围就很容易。 range := ASheet.Range['A1', 'B10']; 这将创建一
在我的64 位 linux-rhel62 机器中,我想计算进程中可用的“最大连续可用空间”。似乎可以使用/proc/self/maps 计算详细信息。但我不知道如何使用该文件来计算连续的可用空间。 知
float* tempBuf = new float[maxVoices](); 上面的结果会不会 1) 16 字节对齐的内存? 2) 确认是连续的内存? 我想要的是: float tempBuf[m
我在 cython 中编写了以下函数来估计对数似然 @cython.boundscheck(False) @cython.wraparound(False) def likelihood(double
这个问题已经有答案了: Create grouping variable for consecutive sequences and split vector (5 个回答) 已关闭去年。 我想将数据
安装 Yosemite 后,我不得不升级 numpy、PyOpenGL 等。 现在,一个以前工作的程序给了我以下堆栈跟踪: file "latebind.pyx", line 44, in OpenG
我正在尝试向量化一些对性能极为关键的代码。在高层次上,每次循环迭代从一个小数组中的非连续位置读取六个浮点数,然后将这些值转换为 double 并将它们添加到六个不同的 double 累加器中。这些累加
aarch64 架构没有多重存储和加载指令,即没有与 armv7 arch 中的 stm 和 ldm 等效的指令。相反,您必须使用 stp 和 ldp 指令来存储和加载寄存器对。 根据ARM引用手册:
考虑这个数组: In [1]: a = numpy.array([[1,2],[3,4]], dtype=numpy.uint8) In [2]: a.strides Out[2]: (2, 1) I
给定 template struct Vector3d { T x, y, z; }; 假设 x、y 和 z 位于连续的内存位置是否安全? 对于 T = float 和 T = double 至少可
我正在尝试修改Kadane算法,以解决更具体的问题。。这是最大子数组问题的代码。我要做的是找出最大长度为K的子数组。。例如:我们有一个数组A=[3,-5 1 2,-1 4,-3 1,-2],我们希望找
对于 matlab 专家来说,这一半是问题,一半是挑战:我想要一个函数接受逻辑数组(假/真),并在结构数组中给出包含 true 的所有连续区域的开头和结尾。 像这样的事情: b = getBounds
假设我有一些如下所示的 HTML: one two three I'm a
在下面的程序中,我得到了输出1个00213056716811268666872686916 而根据我的说法,输出必须是1个2个3个4个5个6个78 因为数组元素存储在连续的内存位置,我正在以连续的方式
我是一名优秀的程序员,十分优秀!