本题要求将数组重构,使偶数下标存放升序偶数、奇数下标存放升序奇数。由于题目保证了数组中偶数和奇数各占一半,且输出数组唯一确定,可以直接采用「分离 + 排序 + 交替填充」的策略。
算法步骤:
evens 列表,奇数元素放入 odds 列表。evens 和 odds 进行升序排序。evens[i/2],下标 i 为奇数时填入 odds[i/2]。给定一个非负整数数组 nums,满足以下两个前提条件:
请你对该数组进行重构,满足以下两个核心要求:
返回满足上述所有条件的重构后数组。
补充说明
输入
[4,2,5,7]
输出
[2,5,4,7]
输入
[1,3,2,6,8,5]
输出
[2,1,6,3,8,5]
说明
偶数元素为 [2,6,8](升序后仍为 [2,6,8]),奇数元素为 [1,3,5](升序后仍为 [1,3,5])
输入
[9,0,3,4,7,2]
输出
[0,3,2,7,4,9]
说明
偶数元素为 [0,4,2](升序后为 [0,2,4]),奇数元素为 [9,3,7](升序后为 [3,7,9])
Scan the QR code below with WeChat to sign in
First-time scan will create your account automatically
请使用微信扫描下方二维码完成注册