leetcode 力扣每日一题系列详解——有效的完全平方数 2021.11.4

17 篇文章 0 订阅
12 篇文章 0 订阅
本文详细解析LeetCode每日一题——有效的完全平方数,提供四种解题方法,包括暴力法、Math.Sqrt、二分查找和牛顿迭代法。重点讨论了二分查找法和牛顿迭代法的实现思路,适合程序员提升算法能力。同时,文章强调了在编程中不应忽视基础数学函数的应用。
摘要由CSDN通过智能技术生成

这是总目录leetcode 力扣每日一题系列详解——总目录


💡题目要求

  1. 有效的完全平方数
    给定一个 正整数 num ,编写一个函数,如果 num 是一个完全平方数,则返回 true ,否则返回 false 。

进阶:不要 使用任何内置的库函数,如 sqrt 。

示例 1:

输入:num = 16
输出:true
示例 2:

输入:num = 14
输出:false

提示:

1 <= num <= 2^31 - 1

在这里插入图片描述


💡答案和解题思路

我一开始的想法就是暴力法,直接遍历,看是否等于x*x,

🌲1.上代码

//暴力解法,遍历
    public bool IsPerfectSquare(int num)
    {
        long x = 1, square = 1;
        while (square <= num)
        {
            if (square == num)
            {
                return true;
            }

            x++;
            square = x * x;
        }

        return false;
    }

🌲2.解题思路

看了官方的题解后,才发现还有这个多方法,还是太年轻啊
🏺1.直接用Math.Sqrt(),我这个竟然没想到,唉
🏺2.第二种就是跟我一样了,直接暴力循环
🏺3.二分查找法
🏺4.牛顿迭代法,我直接放弃了,太难了,哈哈

💡二、知识点学习

今天的知识点就是:被忽略的Math.Sqrt()
二分法
牛顿迭代法


总结

欢迎大佬多多来给萌新指正,欢迎大家来共同探讨。
如果各位看官觉得文章有点点帮助,跪求各位给点个“一键三连”,谢啦~

声明:本博文章若非特殊注明皆为原创原文链接
https://blog.csdn.net/Wrinkle2017/article/details/121165287
————————————————————————————————

💢💢版权声明

版权声明:本博客为非营利性个人原创
所刊登的所有作品的著作权均为本人所拥有
本人保留所有法定权利,违者必究!
对于需要复制、转载、链接和传播博客文章或内容的
请及时和本博主进行联系
对于经本博主明确授权和许可使用文章及内容的
使用时请注明文章或内容出处并注明网址
转载请附上原文出处链接及本声明

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值