zoukankan      html  css  js  c++  java
  • 【剑指Offer】11调整数组顺序使奇数位于偶数前面

    题目描述

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

    时间限制:1秒;空间限制:32768K;本题知识点: 数组

    解题思路

    思路一

    创建一个新的数组,先判断保存奇数,再判断保存偶数。

    # -*- coding:utf-8 -*-
    class Solution:
        def reOrderArray(self, array):
            # write code here
            l = []
            for i in range(len(array)):
                if array[i]%2==1:
                    l.append(array[i])
            for i in range(len(array)):
                if array[i]%2==0:
                    l.append(array[i])
            return l

    思路二

    # -*- coding:utf-8 -*-
    class Solution:
        def reOrderArray(self, array):
            # write code here
            odd,even=[],[]
            for i in array:
                odd.append(i) if i%2==1 else even.append(i)
            return odd+even

    思路三

    利用lambda,python一行代码!

    # -*- coding:utf-8 -*-
    class Solution:
        def reOrderArray(self, array):
            # write code here
            return sorted(array,key=lambda x:x%2,reverse=True)
  • 相关阅读:
    自定义控件-控件关联
    DELPHI INSERT INTO 语句的语法错误 解决方法
    Delphi控件开发
    Delphi控件复合控件
    vcl学习备忘网址
    Delphi单元文件Unit详解
    aowner , nil 和 self 的区别
    Delphi 自定义事件的例子
    PHP中Heredoc
    What is HTTP_USER_AGENT?
  • 原文地址:https://www.cnblogs.com/yucen/p/9912049.html
Copyright © 2011-2022 走看看