1679.K和数对的最大数目

简介: 1679.K和数对的最大数目

题目:给你一个整数数组nums和一个整数k。

每一步操作中,你需要从数组中选出和为 k 的两个整数,并将他们移出数组。

返回你可以对数组执行的最大操作数

解题思路:排序+双指针

class Solution{
    public int maxOperations(int[] nums,int k){
        int len=nums.length;
        int left=0;
        int right=0;
        Arrays.sort(nums);
        right=len-1;
        int sum=0;
        while(left<right){
            if(nums[left]+nums[right]==k){
                sum++;
                left++;
                right--;            
            } else if(nums[left]+nums[right]<k){
                left++;            
            }else{
                right--;            
            }       
        }  
        return sum;              
    }
}


相关文章
|
存储 设计模式 算法
stack和queue及优先级队列和适配器(包括deque)的介绍
stack和queue及优先级队列和适配器(包括deque)的介绍
116 1
|
12月前
|
存储 JavaScript 前端开发
JavaScript编程实现tab选项卡切换的效果+1
JavaScript编程实现tab选项卡切换的效果+1
|
设计模式 安全 Java
【初学者慎入】Spring源码中的16种设计模式实现
以上是威哥给大家整理了16种常见的设计模式在 Spring 源码中的运用,学习 Spring 源码成为了 Java 程序员的标配,你还知道Spring 中哪些源码中运用了设计模式,欢迎留言与威哥交流。
661 3
|
存储 缓存 Java
如何删除 HashMap 中的重复元素?—— 99% 的人不知道的第 3 种实现思路
如何删除 HashMap 中的重复元素?—— 99% 的人不知道的第 3 种实现思路
109 0
|
Java 编译器 索引
深入解析Java中的数组复制:System.arraycopy、Arrays.copyOf和Arrays.copyOfRange
当涉及到在Java中处理数组时,有许多方法可供选择,其中一些包括`System.arraycopy()`、`Arrays.copyOf()`和`Arrays.copyOfRange()`。这些方法允许您在不同的数组之间复制数据,但它们之间有一些细微的差异。在本篇博客文章中,我们将深入探讨这些方法,以便您了解何时使用它们以及如何正确使用它们。
940 1
|
机器学习/深度学习 测试技术
机器学习系列 | 01:多类别分类任务(multi-class)中为何precision,recall和F1相等?
在 multi-class 分类任务中,如果使用 micro 类指标,那么 micro-precision, micro-recall和micro-F1值都是相等的。本文主要针对这个现象进行解释。
|
Android开发
解决eclipse字体背景变红或者变绿的问题
在用eclipse写代码的时候突然遇到这种情况
254 0
解决eclipse字体背景变红或者变绿的问题
|
算法 容器
LeetCode精选算法100题,从入门到入赘
LeetCode精选算法100题,从入门到入赘
414 0
LeetCode精选算法100题,从入门到入赘
|
前端开发
02-CSS选择器
02-CSS选择器
171 0
02-CSS选择器
|
存储 机器人 Java
【肝了好多天!】-动态规划十连-超细腻解析——《我的Java打怪日记》
周末肝了几道动态规划题,写一下我的心得笔记,故事开头,文章循序渐进,如果看官出现头疼不适,望休息,但是别放弃一定要看完!号外:每道题都有单元测试,看官们直接copy就可以debug了。
55088 0
【肝了好多天!】-动态规划十连-超细腻解析——《我的Java打怪日记》