亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

劍指offer:調整數組順序使奇數位于偶數前面

發布時間:2020-08-06 13:04:07 來源:網絡 閱讀:144 作者:Jayce_SYSU 欄目:編程語言

題目描述
輸入一個整數數組,實現一個函數來調整該數組中數字的順序,使得所有的奇數位于數組的前半部分,所有的偶數位于數組的后半部分,并保證奇數和奇數,偶數和偶數之間的相對位置不變。

class Solution:
    def reOrderArray(self, array):
        if not array:
            return array
        p = -1  # 定位下一個奇數應該在的位置
        for i in range(len(array)):
            if array[i] & 1 != 0:  # 如果是奇數
                p += 1
                if i != p:  # 當前奇數不在應在的位置,需要執行交換
                    array[i], array[p] = array[p], array[i]
                    # 交換后需要保證偶數的順序不變
                    # 1, 2, 4, 6, 5, 7
                    #       |
                    # 1, 5, 4, 6, 2, 7   第一次交換后偶數的順序發生變化,需要調整還原
                    #       |
                    # 1, 5, 4, 2, 6, 7   將交換后的偶數往前挪的次數就是i和p之間的距離-1
                    #       |
                    # 1, 5, 2, 4, 6, 7
                    for x in range(i, p + 1, -1):
                        array[x], array[x - 1] = array[x - 1], array[x]

        return array
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

镇原县| 石狮市| 抚宁县| 准格尔旗| 普陀区| 长治县| 亚东县| 昭平县| 铜鼓县| 黎平县| 兴隆县| 开阳县| 德令哈市| 响水县| 西充县| 腾冲县| 望奎县| 嘉善县| 汉川市| 元氏县| 高清| 景谷| 嘉定区| 德清县| 宝应县| 清水河县| 沂源县| 赤峰市| 红桥区| 西城区| 昌黎县| 隆昌县| 依安县| 攀枝花市| 靖安县| 砚山县| 乌兰察布市| 贡嘎县| 鹤岗市| 保靖县| 平定县|