【发布时间】:2017-04-20 00:18:36
【问题描述】:
我想重复向量的元素,但考虑元素块(不使用任何循环)。
例如,考虑一个大小为 2 的块,我有一个类似 a = [1:6] 的向量,我希望输出看起来像这样 out = [1 2 1 2 3 4 3 4 5 6 5 6]。
【问题讨论】:
-
对于大小为 3 的块,预期输出是多少?
-
out = [1 2 3 1 2 3 4 5 6 4 5 6]. -
对于大小为 5 的块?
-
我只考虑块大小是 a (
mod(length (a), block_size) == 0) 中元素数量的除数的情况 -
out = reshape(repmat(reshape(a,blocksize,[]),2,1),1,[])
标签: matlab vector duplicates repeat