Re: [閒聊] 每日LeetCode

看板 Marginalman
作者 yam276 (史萊哲林的優等生)
時間 2023-09-29 00:06:34
留言 3則留言 (0推 0噓 3→)

: https://leetcode.com/problems/sort-array-by-parity/description : 905. Sort Array By Parity : 給你一個整數陣列 nums,返回排序完的 nums,這個陣列的左邊都是偶數右邊都是奇數。 : 思路: : 1.用雙指標來處理,如果左邊的數字是偶數則左邊指標往右,如果右邊數字是奇數則右邊 : 指標往左,如果左邊是奇數右邊是偶數則交換兩邊的數並兩邊同時縮小。 思路: 1. 同上雙指標,不過設定終止條件: a. 左邊的指標是奇數 b. 右邊的指標是偶數 a || b 為真 => 交換兩者 否則 => 指標繼續走 Code: impl Solution { pub fn sort_array_by_parity(nums: Vec<i32>) -> Vec<i32> { let mut result = nums.clone(); let mut left = 0; let mut right = result.len() - 1; while left < right { while (left < right) && (result[left] & 1 == 0) { left += 1; } while (left < right) && (result[right] & 1 == 1) { right -= 1; } if left < right { result.swap(left, right); } } result } } --
※ 批踢踢實業坊(ptt.cc), 來自: 123.193.249.242 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1695917196.A.999.html

PyTorch: 大師 09/29 00:08

Rushia: 大師 09/29 00:10

DJYOSHITAKA: 大師 09/29 00:12

您可能感興趣