python调整数组顺序使奇数位于偶数前面
生活随笔
收集整理的這篇文章主要介紹了
python调整数组顺序使奇数位于偶数前面
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
|調(diào)整數(shù)組順序使奇數(shù)位于偶數(shù)前面
輸入一個(gè)整數(shù)數(shù)組,實(shí)現(xiàn)一個(gè)函數(shù)來調(diào)整該數(shù)組中數(shù)字的順序,使得所有奇數(shù)在數(shù)組的前半部分,所有偶數(shù)在數(shù)組的后半部分。
示例:
輸入:nums = [1,2,3,4]
輸出:[1,3,2,4]
注:[3,1,2,4] 也是正確的答案之一。
提示:
0 <= nums.length <= 50000
0 <= nums[i] <= 10000
題解
class Solution:"""解題思路:1.雙指針解法 p指針正序遍歷 q指針倒序遍歷2.如果p指針遇到偶數(shù),q指針遇到奇數(shù)就交換位置"""def exchange(self, nums: List[int]) -> List[int]:length = len(nums)p, q = 0, length - 1while q > p:# 當(dāng)前p指針指向?yàn)槠鏀?shù) 就向后移位if nums[p] % 2 == 1:p += 1# 當(dāng)前q指針指向?yàn)榕紨?shù) 就向前移位elif nums[q] % 2 == 0:q -= 1# 以上條件都不滿足 交換雙方位置else:nums[p], nums[q] = nums[q], nums[p]return nums總結(jié)
以上是生活随笔為你收集整理的python调整数组顺序使奇数位于偶数前面的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python 归并排序(详解)
- 下一篇: python 合并排序的数组