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;
    }
};
相关推荐
闪电麦坤9521 分钟前
数据结构:在二叉搜索树中插入元素(Insert in a BST)
数据结构·二叉树··二叉搜索树
闪电麦坤9524 分钟前
数据结构:用链式队列实现层序遍历 (Level-order Traversal)
数据结构··遍历
星星火柴93611 小时前
关于“双指针法“的总结
数据结构·c++·笔记·学习·算法
艾莉丝努力练剑11 小时前
【洛谷刷题】用C语言和C++做一些入门题,练习洛谷IDE模式:分支机构(一)
c语言·开发语言·数据结构·c++·学习·算法
闪电麦坤9513 小时前
数据结构:迭代方法(Iteration)实现树的遍历
数据结构·二叉树·
Cx330❀13 小时前
【数据结构初阶】--排序(五):计数排序,排序算法复杂度对比和稳定性分析
c语言·数据结构·经验分享·笔记·算法·排序算法
散11213 小时前
01数据结构-Prim算法
数据结构·算法·图论
..过云雨14 小时前
01.【数据结构-C语言】数据结构概念&算法效率(时间复杂度和空间复杂度)
c语言·数据结构·笔记·学习
拂晓银砾14 小时前
Java数据结构-栈
java·数据结构
旺小仔.15 小时前
双指针和codetop复习
数据结构·c++·算法