平方数之和(力扣)双指针 JAVA

给定一个非负整数 c ,你要判断是否存在两个整数 a 和 b,使得 a^2 + b^2 = c 。

示例 1:

输入:c = 5

输出:true

解释:1 * 1 + 2 * 2 = 5

示例 2:

输入:c = 3

输出:false

提示:

0 <= c <= 2^31 - 1

解题思路:

1、采用双指针在构建的二维矩阵中查找

2、得用long类型变量

3、l = 0, r = Math.sqrt( c )

代码:

java 复制代码
class Solution {
    public boolean judgeSquareSum(int c) {
         long l = 0, r = (long) Math.sqrt(c);
         while(l <= r) {
        	 if(l * l + r * r > c) r --;
        	 else if(l * l + r * r < c) l ++;
        	 else return true;
         }
         return false;
    }
}
相关推荐
CoovallyAIHub3 分钟前
NeurIPS 2025时间检验奖:10年之后再谈Faster R-CNN
深度学习·算法·计算机视觉
tgethe5 分钟前
Lambda表达式
java·后端
__万波__6 分钟前
二十三种设计模式(一)--单例模式
java·单例模式·设计模式
songgz14 分钟前
双向流式 JSON 解析架构:并行优化大型文件处理
java·开发语言·json
CoovallyAIHub15 分钟前
1024层网络让强化学习性能飙升50倍,NeurIPS 2025最佳论文揭示深度scaling的力量
深度学习·算法·计算机视觉
adfass17 分钟前
桌面挂件时钟/多功能时钟C++
开发语言·c++·算法
6***092625 分钟前
Spring 中集成Hibernate
java·spring·hibernate
z***026026 分钟前
Spring Boot管理用户数据
java·spring boot·后端
多多*28 分钟前
Threadlocal深度解析 为什么key是弱引用 value是强引用
java·开发语言·网络·jvm·网络协议·tcp/ip·mybatis
z***396233 分钟前
Plugin ‘org.springframework.bootspring-boot-maven-plugin‘ not found(已解决)
java·前端·maven