每日一题—— 按奇偶排序数组

简介: 每日一题—— 按奇偶排序数组

905. 按奇偶排序数组

题目描述:

给你一个整数数组 nums,将 nums 中的的所有偶数元素移动到数组的前面,后跟所有奇数元素。

返回满足此条件的 任一数组 作为答案。

示例 1:

输入:nums = [3,1,2,4]

输出:[2,4,3,1]

解释:[4,2,3,1]、[2,4,1,3] 和 [4,2,1,3] 也会被视作正确答案。

示例 2:

输入:nums = [0]

输出:[0]

题解:

func sortArrayByarity(nums []int) []int {
  i := 0
  // 遍历nums 遇到奇数 塞到后面,并删除当前位置
  // 这里遍历的是nums 里面nums的修改不会影响这里的遍历
  for _, v := range nums {
    if v%2 != 0 {
      nums = append(nums, v)
      nums = append(nums[0:i], nums[i+1:]...)
    }
    if v%2 == 0 {
      i++
    }
  }
  return nums
}

提交结果:

不知道为什么会报错这个例子,在Goland中用对数器是没有错误的,这个例子在本地运行输出也是[0,1]

相关文章
|
6月前
|
Java
每日一题《剑指offer》数组篇之数组中的逆序对
每日一题《剑指offer》数组篇之数组中的逆序对
41 0
每日一题《剑指offer》数组篇之数组中的逆序对
|
6月前
|
Java
每日一题《剑指offer》数组篇之数组中只出现一次的两个数字
每日一题《剑指offer》数组篇之数组中只出现一次的两个数字
35 0
每日一题《剑指offer》数组篇之数组中只出现一次的两个数字
|
6月前
|
Java
每日一题《剑指offer》数组篇之和为S的两个数字
每日一题《剑指offer》数组篇之和为S的两个数字
43 0
每日一题《剑指offer》数组篇之和为S的两个数字
|
6月前
|
人工智能 Java
每日一题《剑指offer》数组篇之连续子数组的最大和
每日一题《剑指offer》数组篇之连续子数组的最大和
54 0
每日一题《剑指offer》数组篇之连续子数组的最大和
|
6月前
leetcode-922:按奇偶排序数组 II
leetcode-922:按奇偶排序数组 II
36 0
|
6月前
|
人工智能
【力扣每日一题/03】941. 有效的山脉数组
【力扣每日一题/03】941. 有效的山脉数组
|
6月前
|
算法
LeetCode 922. 按奇偶排序数组 II
LeetCode 922. 按奇偶排序数组 II
44 0
|
算法 C语言 C++
Leetcode 每日一题 2341. 数组能形成多少数对
返回一个下标从 0 开始、长度为 2 的整数数组 answer 作为答案,其中 answer[0] 是形成的数对数目,answer[1] 是对 nums 尽可能执行上述操作后剩下的整数数目。
45 0
leetcode 922 按奇偶排序数组II
leetcode 922 按奇偶排序数组II
87 0