JS代碼題18

輸入一個(gè)整數(shù)數(shù)組,實(shí)現(xiàn)一個(gè)函數(shù)來(lái)調(diào)整該數(shù)組中數(shù)字的順序,使得所有奇數(shù)位于數(shù)組的前半部分,所有偶數(shù)位于數(shù)組的后半部分。

輸入:nums = [1,2,3,4]
輸出:[1,3,2,4] 
注:[3,1,2,4] 也是正確的答案之一。

代碼:

var exchange = function(nums) {
    if (!nums.length) return nums
    var l = 0
    var r = nums.length-1
    while(l<r){
        if(nums[l]%2 !== 0){
            l++
        }else{
            var temp = nums[l]
            nums[l] = nums[r]
            nums[r] = temp
            r--
        }
    }
    return nums
};

利用快排的思想,設(shè)置左右兩個(gè)指針。
不過(guò)要注意只能以一個(gè)指針為基礎(chǔ)來(lái)判斷,另一個(gè)指針用來(lái)在交換數(shù)值后,縮小查找范圍

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1. 找出數(shù)組中重復(fù)的數(shù)字 題目:在一個(gè)長(zhǎng)度為n的數(shù)組里的所有數(shù)字都在0到n-1的范圍內(nèi)。數(shù)組中某些數(shù)字是重復(fù)的,...
    BookThief閱讀 2,016評(píng)論 0 2
  • 1.二維數(shù)組的查找 題目描述:在一個(gè)二維數(shù)組中(每個(gè)一維數(shù)組的長(zhǎng)度相同),每一行都按照從左到右遞增的順序排序,每一...
    少年夢(mèng)游計(jì)_3403閱讀 1,223評(píng)論 0 1
  • 說(shuō)明: 本文中出現(xiàn)的所有算法題皆來(lái)自??途W(wǎng)-劍指Offer在線編程題,在此只是作為轉(zhuǎn)載和記錄,用于本人學(xué)習(xí)使用,不...
    秋意思寒閱讀 1,218評(píng)論 1 1
  • 開(kāi)個(gè)新坑,準(zhǔn)備校招研發(fā)崗面試,基本的算法還是要過(guò)關(guān)的。 寫(xiě)在前面 本系列包含《劍指Offer》66道算法題,預(yù)計(jì)一...
    機(jī)鹽Johnny閱讀 5,030評(píng)論 0 12
  • 1、滑動(dòng)窗口的最大值 給定一個(gè)數(shù)組和滑動(dòng)窗口的大小,找出所有滑動(dòng)窗口里數(shù)值的最大值。例如,如果輸入數(shù)組{2,3,4...
    qsmyksny閱讀 537評(píng)論 0 0

友情鏈接更多精彩內(nèi)容