下面是一个示例代码,可以实现将正数放置在偶数索引位置,负数放置在奇数索引位置的功能:
def rearrange_array(nums):
# 初始化一个新的列表 result,用于存放重新排列后的数组
result = [0] * len(nums)
even_index = 0 # 偶数索引
odd_index = 1 # 奇数索引
for num in nums:
if num > 0:
# 如果是正数,将其放置在偶数索引位置
result[even_index] = num
even_index += 2
else:
# 如果是负数,将其放置在奇数索引位置
result[odd_index] = num
odd_index += 2
return result
# 测试示例
nums = [1, -2, 3, -4, 5, -6, 7, -8]
result = rearrange_array(nums)
print(result) # 输出: [1, -2, 3, -4, 5, -6, 7, -8]
在这个示例代码中,我们定义了一个 rearrange_array
函数,它接受一个整数数组 nums
作为参数,并返回重新排列后的数组。我们使用两个变量 even_index
和 odd_index
来跟踪偶数索引和奇数索引位置,并初始化一个新的列表 result
。
然后,我们遍历输入数组 nums
中的每个元素。如果元素是正数,我们将其放置在偶数索引位置,然后将 even_index
增加 2,以便下一个正数被放置在下一个偶数索引位置。如果元素是负数,我们将其放置在奇数索引位置,然后将 odd_index
增加 2。
最后,我们返回重新排列后的列表 result
。
这样,我们就可以实现将正数放置在偶数索引位置,负数放置在奇数索引位置的功能。在上面的示例中,输入数组 [1, -2, 3, -4, 5, -6, 7, -8]
经过重新排列后,得到的结果是 [1, -2, 3, -4, 5, -6, 7, -8]
。