JZ13怎么调整数组顺序使奇数位于偶数前面

本篇内容介绍了“JZ13怎么调整数组顺序使奇数位于偶数前面”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

目前成都创新互联已为上千的企业提供了网站建设、域名、网络空间、网站托管、服务器租用、企业网站设计、苏州网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

JZ13 调整数组顺序使奇数位于偶数前面

题目

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

思路

需要使用稳定排序

# @param array int整型一维数组
# @return int整型一维数组
#
class Solution:
    '''两次遍历
    def reOrderArray(self , array):
        newarray = []
        for i in array:
            if i%2!=0:
                newarray.append(i)
        for i in array:
            if i%2==0:
                newarray.append(i)
        return newarray
    '''


    '''一次遍历
    def reOrderArray(self, array):
        i, j = 0, 0
        while 1:
            if i>=len(array):
                break
            if array[i]%2!=0:
                array.insert(j, array.pop(i))
                j += 1
            i += 1
        return array
    '''


if __name__ == '__main__':
    sl = Solution()
    print(sl.reOrderArray([1,2,3,4,5,6,7]))
    print(sl.reOrderArray([2,4,6,1,3,5,7]))
    print(sl.reOrderArray([]))

“JZ13怎么调整数组顺序使奇数位于偶数前面”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注创新互联网站,小编将为大家输出更多高质量的实用文章!


本文名称:JZ13怎么调整数组顺序使奇数位于偶数前面
文章转载:http://scyanting.com/article/ihjjis.html