学习利用工具
剑指Offer http://itmyhome.com/sword-means-offer/sword-means-offer.pdf
LeetCode的剑指Offer题库 https://leetcode.cn/problemset/all/
剑指 Offer 21. 调整数组序次使奇数位于偶数前面
输入一个整数数组,实现一个函数来调整该数组中数字的序次,使得全部奇数在数组的前半部门,全部偶数在数组的后半部门。
示例:
输入:nums = [1,2,3,4]输出:[1,3,2,4] 注:[3,1,2,4] 也是精确的答案之一。提示:
- 0 <= nums.length <= 50000
- 0 <= nums <= 10000
解法:
双指针,一个从头开始遍历,另一个从尾开始遍历。将第一个指针遍历遇到的偶数与第二个指针遍历遇到的奇数举行交换,直到两指针相遇,算法竣事。时间复杂度O(N)。 |