You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

2n结构数组交错重排算法的For循环代码重构优化咨询

C# 数组Shuffle方法For循环重构方案

核心实现思路

原代码通过2次独立循环分别填充结果数组的偶数位、奇数位,可优化为单次循环同时处理两组元素的赋值,逻辑更紧凑,迭代效率更高。

重构后代码

public int[] Shuffle(int[] nums, int n) {
    int[] result = new int[2 * n];
    for (int i = 0; i < n; i++)
    {
        // 填充x序列到偶数索引位
        result[2 * i] = nums[i];
        // 填充y序列到相邻奇数索引位
        result[2 * i + 1] = nums[i + n];
    }
    return result;
}

优化点说明

  • 循环总次数从原方案的2n次缩减为n次,降低了迭代开销
  • 移除了额外的临时变量z,直接通过循环索引i计算源数组取值位置和结果数组赋值位置,逻辑更直观,可读性更强
  • 代码行数大幅缩减,降低了临时变量重复赋值带来的出错概率,维护成本更低

示例验证

针对输入nums = [2,5,1,3,4,7],n = 3的场景:

  • i=0时:result[0] = 2,result[1] = 3
  • i=1时:result[2] =5,result[3] =4
  • i=2时:result[4] =1,result[5] =7
    最终输出为[2,3,5,4,1,7],完全符合需求。

内容的提问来源于stack exchange,提问作者MannyDev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 12:09:03