题目:输入一个整数数组,调整数组中数字的顺序,使得所有偶数位于数组的前半部分,
所有奇数位于数组的后半部分。要求时间复杂度为O(n)。
def Switch(m):
s=0;
e=len(m)-1;
while s<=e:
if m[s]%2!=1:
s+=1
continue
if m[e]%2!=0:
e-=1
continue
if m[s]%2==1 and m[e]%2==0:
m[s],m[e]=m[e],m[s]
return m
a=[1,2,3,5,3,6,7,8,9]
Switch(a)
print a
分享到:
相关推荐
算法题-算法题资源算法题-算法题资源
"算法大全-面试题-链表-栈-二叉树-数据结构"这个压缩包文件提供了丰富的知识资源,旨在帮助学习者深入理解和应用这些核心概念。 链表是一种线性数据结构,与数组不同,它的元素在内存中不是连续存储的。链表由一...
算法大全 -面试题- 数据结构
算法题-整数反转.js
算法题-华为od的测试 (试题练习)
华为od算法题-组装新的数组-Java解法
信奥算法题--B2005 字符三角形,scratch实现的素材
算法题_forecast-m笔记
根据给定文件的信息,我们可以提炼出与ACM算法题及经典算法库相关的多个知识点。以下是对这些知识点的详细解析: ### ACM国际大学生软件大赛简介 ACM(Association for Computing Machinery)国际大学生软件大赛是...
算法题_SVM-maste测试系统
算法实现题2-1是书中的一个重要练习,虽然具体的题目内容没有给出,但通常这类题目会涉及基础的算法类型,如排序、查找、图论或者动态规划等。在计算机科学的学习过程中,实践和理解算法的实现是至关重要的。下面...
《算法大全-面试题-数据结构.pdf》是一个深入探讨算法和数据结构的资源,对于程序员,尤其是准备面试的开发者来说,这是一个极其宝贵的学习材料。它涵盖了算法和数据结构的基础概念,以及在实际问题中的应用,旨在...
华为od算法题,100分题-最多提取子串数目-Java解法
- **基本思想**:将大问题分解为较小的子问题,分别解决后再合并结果。 - **适用场景**:适用于可以被分解为独立子问题的情况。 - **优点**:简化问题,提高效率。 #### 四、实例分析 1. **斐波那契数列计算**...