Python 调整数组,使奇数位于偶数前

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/m0_37693335/article/details/82260395

 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变

def odd_(num):
    for i in range(len(num)-1):
        # k = 0
        # for j in(i+1, len(num)):

        if num[i] % 2 == 0 and num[i+1] % 2 == 1:#前偶数,后奇数就交换
            num[i], num[i+1] = num[i+1], num[i]

        while i > 0:
            if num[i] % 2 == 1 and num[i-1] % 2 == 0:
                num[i], num[i-1] = num[i-1], num[i]
            i -= 1
    return num




if __name__ == "__main__":
    target = 2#int(input())
    # arr = list(map(int, input().split()))

    arr = [1, 2, 3, 4, 3]
    # repeat_num(target, arr)
    print(odd_(arr))

猜你喜欢

转载自blog.csdn.net/m0_37693335/article/details/82260395