NC 求平方根

系列文章目录


文章目录


前言

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通用,看懂了就去分享给你的码吧。


描述

实现函数 int sqrt(int x).

计算并返回 x 的平方根(向下取整)

题解二:利用平方数的性质

题解思路: 利用平方数的性质

复杂度分析:

时间复杂度:O(N),每次+2的循环,为(1/2)N的时间复杂度,去掉系数,为O(N)

空间复杂度: O(1),只使用了有限常数个变量;

实现如下:

java 复制代码
class Solution {
public:
    /**
     *
     * @param x int整型
     * @return int整型
     */
   int sqrt(int x) {
        if(x<=0) return 0;  //小于等于0 返回0
        int ans = 1; 
        int num = 1;
        int  i = 3;
        while(num+i<=x){
            num+=i;  
            ans ++; // 每加一个奇数,ans+1
            i += 2;
        }
        return ans;
    }
};
相关推荐
songx_9921 分钟前
leetcode10(跳跃游戏 II)
数据结构·算法·leetcode
先做个垃圾出来………1 小时前
差分数组(Difference Array)
java·数据结构·算法
dragoooon342 小时前
[数据结构——lesson5.1链表的应用]
数据结构·链表
神里流~霜灭5 小时前
(C++)数据结构初阶(顺序表的实现)
linux·c语言·数据结构·c++·算法·顺序表·单链表
要开心吖ZSH5 小时前
软件设计师备考-(十六)数据结构及算法应用(重要)
java·数据结构·算法·软考·软件设计师
zhong liu bin7 小时前
MySQL数据库面试题整理
数据结构·数据库·mysql
bkspiderx17 小时前
C++经典的数据结构与算法之经典算法思想:贪心算法(Greedy)
数据结构·c++·算法·贪心算法
中华小当家呐18 小时前
算法之常见八大排序
数据结构·算法·排序算法
tju新生代魔迷19 小时前
数据结构:双向链表
数据结构·链表
songx_9921 小时前
leetcode9(跳跃游戏)
数据结构·算法·游戏