LeetCode 905. 按奇偶排序数组
题目
给定一个非负整数数组 A,返回一个数组,在该数组中, A 的所有偶数元素之后跟着所有奇数元素。
你可以返回满足此条件的任何数组作为答案。
示例: 输入:[3,1,2,4] 输出:[2,4,3,1] 输出 [4,2,3,1],[2,4,1,3] 和 [4,2,1,3] 也会被接受。
提示:
1 <= A.length <= 5000
0 <= A[i] <= 5000
解题思路
class Solution: def sortArrayByParity(self, A: [int]) -> [int]: # #双指针 # left = 0 # right = len(A)-1 # while left != right: # if A[left] %2 == 0: # left += 1 # continue # if A[right] %2 == 1: # right -= 1 # continue # A[left], A[right] = A[right], A[left] # left += 1 # if left == right:break # right -= 1 # return A #数组 ret = [] for i in A: if i %2 == 0: ret.insert(0,i) else: ret.append(i) return ret
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
代理项 Surrogate
概述 代理项(Surrogate),是一种仅在 UTF-16 中用来表示补充字符的方法。在 UTF-16 中,为补充字符分配两个 16 位的 Unicode 代码单元: 第一个代码单元,被称为高代理项代码单元或前导代码单元; 第二个代码单元,被称为低代理项代码单元或尾随代码单元。 这两个代码单元组合在一起,就被称为代理项对。 相关术语 为了能更好地理解“代理项”这一概念,就需要先了解相关的 Unicode 术语:1 代码点(Code Point): Unicode 代码空间中的任何值,即从 0 到 10FFFF~16~ 的整数范围。但并非所有代码点都分配给编码字符。 一个字符在任何编码字符集中的值或位置。 代码单元(Code Unit):最小的数位组合,可以表示用于处理或交换的编码文本的单位。在 Unicode 标准中,UTF-8 编码格式采用 8 位编码单元,UTF-16 编码格式采用 16 位编码单元,UTF-32 编码格式采用 32 位编码单元。 BMP 字符(BMP Character):位于 BMP(Basic Multilingual Plane,多语种基本面)代码点的 U...
- 下一篇
Java I/O模型及其底层原理
Java I/O模型及其底层原理 Java I/O是Java基础之一,在面试中也比较常见,在这里我们尝试通过这篇文章阐述Java I/O的基础概念,帮助大家更好的理解Java I/O。在刚开始学习Java I/O时,我很迷惑,因为网上绝大多数的文章都是讲解Linux网络I/O模型的,那时我总是搞不明白和Java I/O的关系。后来查了看了好多,才明白Java I/O的原理是以Linux网络I/O模型为基础的,理解了Linux网络I/O模型再学习Java I/O就很方便了,所以这篇文章,我们先来了解I/O的基本概念,再学习Linux网络I/O模型,最后再看Java中的几种I/O。 什么是I/O?I/O是Input、Output的缩写,即对应计算机中的输入输出,以一次文件读取为例,我们需要将磁盘上的数据读取到用户空间,那么这次数据转移操作其实就是一次I/O操作,更具体的说是一次文件I/O。我们浏览网页,其中在请求一个网页时,服务器通过网络把数据发送给我们,此时程序将数据从TCP缓冲区复制到用户空间,那么这次数据转移操作其实也是一次I/O操作,更具体的说是一次网络I/O。I/O到处都在,十分...
相关文章
文章评论
共有0条评论来说两句吧...