小编Ger*_*nis的帖子

从具有特定概率的字母表生成随机字符串(randsrc问题)

所以我熟悉randsrc并且我可以使用给定概率的整数随机字母表创建.所以我想说我有这个字母表

alphabet={'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'};
prob=[0.08167 0.01492 0.02782 0.04254 0.12702 0.02228 0.02015 0.06094 0.06966 0.00153 0.00772 0.04025 0.02406 0.06749 0.07507 0.01929 0.00095 0.05987 0.06327 0.09056 0.02758 0.00978 0.02360 0.00150 0.01974 0.00074];
Run Code Online (Sandbox Code Playgroud)

注意:字母表是1x26维度的单元格,prob是1x26双数组.

我可以像这样创建一个随机字符串

s = 'abcdefghijklmnopqrstuvwxyz';
%find number of random characters to choose from
numRands = length(s); 
%specify length of random string to generate
sLength = 10;
%generate random string
randString = s(ceil(rand(1,sLength)*numRands));
Run Code Online (Sandbox Code Playgroud)

这种方式的问题在于我无法找到一种方法来考虑概率.所以我一直在努力做的是:

randomString =randsrc(10,1,[alphabet; prob]);
Run Code Online (Sandbox Code Playgroud)

但这会在控制台中显示:

Error using vertcat 
Dimensions of arrays being concatenated are not consistent. 
Consider converting input arrays …
Run Code Online (Sandbox Code Playgroud)

matlab

5
推荐指数
1
解决办法
165
查看次数

用分隔符"/"标记字符串

大家好我正面临一个问题,因为我无法想出一个方法,它将采用一个字符串(实际上是日期/月/年形式的日期)作为参数,并在矢量或数组中对其进行标记.有人可以帮忙吗?我知道有很多关于此的主题,但我找不到任何不包括boost的解决方案(我不想使用).

c++ tokenize c++11

-2
推荐指数
1
解决办法
106
查看次数

标签 统计

c++ ×1

c++11 ×1

matlab ×1

tokenize ×1