首页 > 其他分享 >leedcode x的平方根

leedcode x的平方根

时间:2024-01-25 10:33:07浏览次数:31  
标签:return int self Solution leedcode 平方根 else

暴力搜索

class Solution:
    def mySqrt(self, x: int) -> int:
        if x>=100 and x<10000:
            i=10
        elif x>=10000 and x<1000000:
            i=100
        elif x>=1000000:
            i=1000
        else:
            i=0



        flag=True
        while flag:
            if i*i==x:

                return i
            elif i*i<x and (i+1)*(i+1)>x:

                return i
            else:
                i+=1

二分法

class Solution:
    def mySqrt(self, x: int) -> int:
        if x == 0:
            return 0
        left = 1
        right = x
        res = 0
        while left <= right:
            mid = left + (right - left) // 2
            if mid*mid== x:
                return mid
            elif mid * mid < x:
                left = mid + 1
                res = mid
            else:
                right = mid - 1
        return res

 

标签:return,int,self,Solution,leedcode,平方根,else
From: https://www.cnblogs.com/yyyjw/p/17986497

相关文章

  • leedcode 二进制求和
    自己写的classSolution:defaddBinary(self,a:str,b:str)->str:a_len=len(a)b_len=len(b)ifa_len<b_len:temp=bb=aa=tempa_len=len(a)b_len=len(b)b_li......
  • 计算机编程中的黑魔法编程是什么?如何求解一个浮点数的平方根倒数?计算机中的浮点数是如
    原视频:没有显卡的年代,这群程序员用4行代码优化游戏最原始的求解目标:(求一个浮点数的开方的导数)浮点数在计算机中的表示形式:对数的运算法则:A为a在计算机中的表示形式(二进制表示形式):求浮点数的平方根倒数的应用场景:这个情况,直白的说就......
  • leedcode 找出字符串中第一个匹配项的下标
    自己写的classSolution:defstrStr(self,haystack:str,needle:str)->int:haystack_len=len(haystack)needle_len=len(needle)ifhaystack==needle:return0ifhaystack_len<needle_len:......
  • leedcode 移除元素
    自己写的:classSolution:#122334defremoveElement(self,nums,val):numms_len=len(nums)ifnumms_len==0:returnnumms_leni=0whilei<numms_len:ifnums[i]==val:......
  • leedcode 删除有序数组中的重复项
    classSolution:#12234defremoveDuplicates(self,nums):nums_len=len(nums)#5ifnums_len==0:returnnums_lenifnums_len==1:returnnums_lenflag=Truei=0whilef......
  • 牛顿迭代法求平方根
      publicclassCalcUtils{publicstaticvoidmain(String[]args){System.out.println(sqrt(8));}publicstaticdoublesqrt(doublec){if(c<0)returnDouble.NaN;doubleerr=1e-15;doublet=c;......
  • leedcode 罗马数字转整数
    classSolution:defromanToInt(self,s:str)->int:num_convert={'I':1,'V':5,'X':10,'L':50,'C':100,'D':500,'M':1000}s_len=len(s)count=0f......
  • 69. x 的平方根
    69.x的平方根给你一个非负整数x,计算并返回x的算术平方根。由于返回类型是整数,结果只保留整数部分,小数部分将被舍去。注意:不允许使用任何内置指数函数和算符,例如pow(x,0.5)或者x**0.5。二分思路数据挺大,用longlong。classSolution{public:intmyS......
  • 平方根倒数快速算法
    平方根是什么?给定一个x,我想算x^(1/2),就是在算平方根在计算机里最常见的算法是牛顿迭代法牛顿迭代法平方根倒数是什么?给定一个x,我想算x^-(1/2),就是在算平方根的倒数平时我们是如何计算的?如果在纸上写,就是一步一步的算,先算平方根(一般就是查表法),再求倒数;但是大部分的数是无......
  • 计算一个数的平方根
    #include<stdio.h>#include<math.h> intmain(){   doublenum=25.0;   doublesquareRoot=sqrt(num);      printf("Thesquarerootof%fis%f\n",num,squareRoot);   return0;}......