matlab - 如何去交错向量?
问题描述
如何有效地重新排序向量?数字代表电影中的“帧”,按以下顺序排序:
a=[1 4 7 2 5 8 3 6 9];
结果应该是一个单元格数组,其中包含以 1,2 和 3 开头的不同流:
b{1}=[1 2 3];
b{2}=[4 5 6];
b{3}=[7 8 9];
现在我正在使用for
循环,但我预感它可以比for
循环更有效地完成(即更少的代码行,更少的运行时间):
for ind=1:3
b{ind}=a(ind:3:end);
end
最终代码有ind=1:30000
而不是ind=1:3
; 有没有更有效的方法来做到这一点?
解决方案
推荐阅读
- arrays - 如何使用 axios vue.js 使用 api
- java - 将各种 JPanel 添加到 JScrollPane
- javascript - Taptool上的JS回调用于不同的情节,使用两个来源
- javascript - 模式弹出窗口中的引导选项卡不起作用
- ios - Visual Studio 2019 更新后卡在突出显示的蓝屏上
- php - 如何使用 Apache 在 AWS EC2 实例上运行 PHP Ratchet WebSocket 应用程序
- arrays - 具有不同大小的二维数组分配问题 VHDL
- ios - 在苹果登录中使用客户端 ID 和密码的位置
- pyinstaller - 带有 pyinstaller 的脚本从 resource_filename 返回 TypeError 预期 str
- wordpress - 在 Wordpress 中创建自定义按钮的最佳实践