例如,
ls = [8, 5, 2, 17]
Run Code Online (Sandbox Code Playgroud)
我想用它们之前的项目替换每个项目,并为最后一个项目添加一个新值。
预期的结果是:
ls = [5, 2, 17, new_value]
Run Code Online (Sandbox Code Playgroud)
从时间复杂度的角度来看,达到这一目标的最佳方法是什么?
我的实现细节:
我正在一个名为“鲍鱼”的棋盘游戏上实现 AlphaZero 算法,我需要处理输入数据。
输入数据的示例是,
ls_3d = [
[board_before_2_last_board],
[board_before_last_board],
[last_board],
[current_board]
]
*each board is a 2d array
Run Code Online (Sandbox Code Playgroud)
我必须不断处理这个 3d 列表的每一个动作。我想我会多次这样做以训练模型,所以我希望它尽可能快。
看到答案后,我认为方法与一维列表中的方法相同。像这样:
ls = ls[1:,:,:]+[new_board]
Run Code Online (Sandbox Code Playgroud)
这是正确的吗?