题目:输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数在数组的前半部分,所有偶数在数组的后半部分。
链接: 力扣Leetcode—剑指Offer—数组—21.调整数组顺序使奇数位于偶数前面.
示例 1:
输入:nums = [1,2,3,4]
输出:[1,3,2,4]
注:[3,1,2,4] 也是正确的答案之一。
思路:遍历数组,奇数添加到a []int,偶数添加到b []int,最后append(a,b)
Go代码如下:
package main
import "fmt"
func exchange(nums []int) []int {
n := len(nums)
var a []int
var b []int
for i := 0; i < n; i++ {
if nums[i]%2 == 1 {
a = append(a, nums[i])
} else {
b = append(b, nums[i])
}
}
c := append(a, b...)
return c
}
func main() {
a := []int{2, 16, 3, 5, 13, 1, 16, 1, 12, 18, 11, 8, 11, 11, 5, 1}
fmt.Println(exchange(a))
}
提交截图:
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。