367. 有效的完全平方数(java)

简介: 367. 有效的完全平方数(java)

二分法:

class Solution {

public boolean isPerfectSquare(int num) {
  int left = 0,right = num;
  if(num==1)
  {
      return true;
  }
  while(left<right)
  {
      int mid = ((right-left)/2)+left;
      long x = (long)mid*mid;
      if(num<x)
      {
          right=mid;
      }else if(num>x)
        {
            left=mid+1;
        }else
        {
            return true;
        }
  }
  return false;

}

}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
暴力解法:

int n = 1;

while (num / n >= n) {
    if (num % n==0 && num/n == n) {
        return true;
    }
    n++;
}
return false;

1
2
3
4
5
6
7
8
牛顿迭代:

class Solution {

public boolean isPerfectSquare(int num) {
    double x = num;
    while(x * x - num > 0.00000001){
        x = (num/x + x)/2;
    }
    int y = (int)x;
    return y*y == num;
}

}

相关文章
|
算法 Java
Java实现2个数字的平方和等于一个数字(leetcode算法题)
Java实现2个数字的平方和等于一个数字(leetcode算法题)
346 0
Java实现2个数字的平方和等于一个数字(leetcode算法题)
633. 平方数之和:【最优解】费马平方和性质进行求解|Java 刷题打卡
633. 平方数之和:【最优解】费马平方和性质进行求解|Java 刷题打卡
(JAVA编程练习):一个整数,它加上100后是平方数,再加上168又是一个平方数,该数是?+ 输入三个数,进行小到大排序。
(JAVA编程练习):一个整数,它加上100后是平方数,再加上168又是一个平方数,该数是?+ 输入三个数,进行小到大排序。
(JAVA编程练习):一个整数,它加上100后是平方数,再加上168又是一个平方数,该数是?+ 输入三个数,进行小到大排序。
|
1月前
|
JSON 网络协议 安全
【Java】(10)进程与线程的关系、Tread类;讲解基本线程安全、网络编程内容;JSON序列化与反序列化
几乎所有的操作系统都支持进程的概念,进程是处于运行过程中的程序,并且具有一定的独立功能,进程是系统进行资源分配和调度的一个独立单位一般而言,进程包含如下三个特征。独立性动态性并发性。
142 1
|
1月前
|
JSON 网络协议 安全
【Java基础】(1)进程与线程的关系、Tread类;讲解基本线程安全、网络编程内容;JSON序列化与反序列化
几乎所有的操作系统都支持进程的概念,进程是处于运行过程中的程序,并且具有一定的独立功能,进程是系统进行资源分配和调度的一个独立单位一般而言,进程包含如下三个特征。独立性动态性并发性。
160 1
|
2月前
|
数据采集 存储 弹性计算
高并发Java爬虫的瓶颈分析与动态线程优化方案
高并发Java爬虫的瓶颈分析与动态线程优化方案
Java 数据库 Spring
136 0
|
2月前
|
算法 Java
Java多线程编程:实现线程间数据共享机制
以上就是Java中几种主要处理多线程序列化资源以及协调各自独立运行但需相互配合以完成任务threads 的技术手段与策略。正确应用上述技术将大大增强你程序稳定性与效率同时也降低bug出现率因此深刻理解每项技术背后理论至关重要.
220 16
|
3月前
|
缓存 并行计算 安全
关于Java多线程详解
本文深入讲解Java多线程编程,涵盖基础概念、线程创建与管理、同步机制、并发工具类、线程池、线程安全集合、实战案例及常见问题解决方案,助你掌握高性能并发编程技巧,应对多线程开发中的挑战。
|
3月前
|
数据采集 存储 前端开发
Java爬虫性能优化:多线程抓取JSP动态数据实践
Java爬虫性能优化:多线程抓取JSP动态数据实践
下一篇
oss云网关配置