时间复杂度为o(n),空间复杂度为o(1)
思路:定义两个指针,分别位于数组的首尾两端,当出现left指向偶数,right指向奇数,就调换,否则left++,right--;
牛客网上的题目有点改变:
题目描述
输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变
思路:
(1)判断数组是否为空的情况
(2)令i=0开始,寻找第一个偶数,j=i+1,找到第一个奇数
(3)将i到j-1的数字向后面移动,并且将找到的奇数放在i的位置上