561.Array Partition I--Python

针对LeetCode上的ArrayPartitionI问题,介绍了如何通过Python编程解决该问题。主要思路是对数组进行排序后取偶数位元素求和,以实现配对使每对中较小数值之和最大。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

刚开始学习Python编程,欢迎交流学习!

561.Array Partition I

Given an array of 2n integers, your task is to group these integers into n pairs of integer, say (a1, b1), (a2, b2), …, (an, bn) which makes sum of min(ai, bi) for all i from 1 to n as large as possible.

Input: [1,4,3,2]

Output: 4

Explanation: n is 2, and the maximum sum of pairs is 4 = min(1, 2) + min(3, 4).

Note:

n is a positive integer, which is in the range of [1, 10000].

All the integers in the array will be in the range of [-10000, 10000].

思路:由题目示例可以看出输出只要为最终的和可以了,所以不一定非得先将一个大的数组(列表)中的数据先挨个化成分开的小数组(列表),正确理解题目意思,可以输出结果就行了。所以直接对原数组(列表)排序(Python自带的函数),然后取偶数项相加就可以了。

    class Solution:
        def arrayPairSum(self, nums):
         """
            :type nums: List[int]
            :rtype: int
         """
        nums.sort()
        return sum(nums[::2])
025-06-27 17:52:39 [main] INFO o.a.s.s.c.e.codegen.CodeGenerator - Code generated in 190.8767 ms 2025-06-27 17:52:40 [main] INFO o.a.s.s.c.e.codegen.CodeGenerator - Code generated in 7.2843 ms 2025-06-27 17:52:40 [main] ERROR c.s.service.SparkStreamingPipeline - 数据清洗流程异常:wrong number of arguments java.lang.IllegalArgumentException: wrong number of arguments at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:101) at org.codehaus.groovy.runtime.metaclass.TransformMetaMethod.invoke(TransformMetaMethod.java:54) at groovy.lang.MetaClassImpl$3.invoke(MetaClassImpl.java:1257) at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:323) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1217) at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1041) at org.codehaus.groovy.runtime.callsite.PojoMetaClassSite.call(PojoMetaClassSite.java:44) at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:47) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:115) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:127) at com.suwei.service.SparkStreamingPipeline.runFromRabbitMQ(SparkStreamingPipeline.groovy:72) at com.suwei.service.SparkStreamingPipeline$runFromRabbitMQ.call(Unknown Source) at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:47) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:115) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:135) at com.suwei.bigdata.BigDataApplicationTests.testFullCleaningPipeline(BigDataApplicationTests.groovy:
最新发布
06-28
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值