剑指offer:调整数组顺序使奇数位于偶数前面
生活随笔
收集整理的這篇文章主要介紹了
剑指offer:调整数组顺序使奇数位于偶数前面
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
文章目錄
- 分析
- 題目來(lái)源
分析
快排的思想:前后兩個(gè)指針left和right分別從左往右遍歷,和從右往左遍歷。
- 對(duì)于left,如果是奇數(shù),left一直右移;
- 對(duì)于right,如果是偶數(shù),right一直左移;
- 如果兩個(gè)指針沒(méi)有相遇,就交換兩個(gè)指針?biāo)赶虻脑亍?/li>
- 在相遇時(shí)退出。
ac代碼
class Solution { public:vector<int> exchange(vector<int>& nums) {int left = 0 ,right = nums.size() - 1;while (left < right) {while (left < right && nums[left] % 2 == 1) left ++;while (left < right && nums[right] % 2 == 0) right --;if (left < right) swap(nums[left],nums[right]);}return nums;} };題目來(lái)源
https://leetcode-cn.com/problems/diao-zheng-shu-zu-shun-xu-shi-qi-shu-wei-yu-ou-shu-qian-mian-lcof/
https://www.acwing.com/problem/content/30/
總結(jié)
以上是生活随笔為你收集整理的剑指offer:调整数组顺序使奇数位于偶数前面的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 剑指offer:表示数值的字符串cpp题
- 下一篇: 剑指offer:链表中倒数第k个节点