【发布时间】:2021-07-07 17:05:58
【问题描述】:
我想迭代一个数组,但我想选择迭代是按列还是按行。换句话说,我想在运行时定义每次 rows 或 cols 是否进入外循环,反对条件。虚拟实现当然是:
if cond:
for rows:
for cols:
ar[rows][cols];
elif !cond:
for cols:
for rows:
ar[rows][cols];
现在,有没有一种压缩方式来表达上述实现?
不幸的是,遍历所有案例(我的数组是 4 维的,所以我有 16 个案例)并不是最好的方法。
那么,有没有什么算法可以将这些循环压缩成一个循环呢?
【问题讨论】:
标签: arrays algorithm loops conditional-statements iteration