Python 中的 K 和 -K
pythonserver side programmingprogramming更新于 2025/12/26 17:16:17
假设我们有一个名为 nums 的数字列表,我们必须找到 nums 中存在的最大数字 k(它们可以是相同的数字)。如果没有这样的元素,则返回 -1。
因此,如果输入为 [-5, 2, 9, -6, 5, -9],则输出为 9。
为了解决这个问题,我们将遵循以下步骤 −
- L1:= nums 中的 0 和正元素的列表
- L2:= nums 中的 0 和负元素的列表
- 按相反顺序对 L1 进行排序
- 对列表 L2 进行排序
- 对于 L1 中的每个 i,执行
- 对于 L2 中的每个 j,执行
- 如果 i+j 与 0 相同,则
- 返回 i
- 否则当 i+j > 0 ,则
- 退出当前循环
- 如果 i+j 与 0 相同,则
- 对于 L2 中的每个 j,执行
- 返回 -1
让我们看看下面的实现以便更好地理解 −
示例
class Solution: def solve(self, nums): L1=[i for i in nums if i>=0] L2=[i for i in nums if i<=0] L1.sort(reverse=True) L2.sort() for i in L1: for j in L2: if i+j==0: return i elif i+j>0: break return -1 ob = Solution() nums = [-5, 2, 9, -6, 5, -9] print(ob.solve(nums))
输入
[-5, 2, 9, -6, 5, -9]
输出
9
相关文章
有用资源
python 参考教程 - 该教程包含有关 python 的更多信息:https://www.cainiaomax.com/python/

