Leecode刷题之旅-C语言/python-69x的平方根
2024-09-26 03:43:40
/*
* @lc app=leetcode.cn id=69 lang=c
*
* [69] x 的平方根
*
* https://leetcode-cn.com/problems/sqrtx/description/
*
* algorithms
* Easy (34.81%)
* Total Accepted: 25.4K
* Total Submissions: 73.1K
* Testcase Example: '4'
*
* 实现 int sqrt(int x) 函数。
*
* 计算并返回 x 的平方根,其中 x 是非负整数。
*
* 由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去。
*
* 示例 1:
*
* 输入: 4
* 输出: 2
*
*
* 示例 2:
*
* 输入: 8
* 输出: 2
* 说明: 8 的平方根是 2.82842...,
* 由于返回类型是整数,小数部分将被舍去。
*
*
*/
int mySqrt(int x) {
long i = ;
if(x==){
return ;
}
for(i=;i<=x/;i++){
if(i*i==x){
return i;
}
else if(i*i<x&&(i+)*(i+)>x){
return i;
}
}
return ;
}
这里要注意取值范围,用long比较合适。思路也挺简单的,循环到目标值的一半即可,然后两个判断,要么相等,要么当前值平方小于目标值,当前值加1的平方大于目标值。
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
python:
#
# @lc app=leetcode.cn id=69 lang=python3
#
# [69] x 的平方根
#
# https://leetcode-cn.com/problems/sqrtx/description/
#
# algorithms
# Easy (34.81%)
# Total Accepted: 25.4K
# Total Submissions: 73.1K
# Testcase Example: '4'
#
# 实现 int sqrt(int x) 函数。
#
# 计算并返回 x 的平方根,其中 x 是非负整数。
#
# 由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去。
#
# 示例 1:
#
# 输入: 4
# 输出: 2
#
#
# 示例 2:
#
# 输入: 8
# 输出: 2
# 说明: 8 的平方根是 2.82842...,
# 由于返回类型是整数,小数部分将被舍去。
#
#
#
class Solution:
def mySqrt(self, x: int) -> int:
low = 0
mid = x // 2 # //代表整数除法
high = x
while low <= high: #注意判断条件
if mid * mid > x:
high = mid - 1
elif mid * mid < x:
low = mid + 1
else:
return mid
mid = (low + high) // 2
return mid #向下取整
python用的是二分法。
最新文章
- [LeetCode] First Bad Version 第一个坏版本
- IOS基础库
- 数据可视化(2)--Justgage
- CC2541连接BTool教程
- POJ 2826 An Easy Problem?!
- 前台添加jquery的引用
- 自定义 select 下拉菜单
- python udp编程实例
- JS中三目运算符和if else的区别分析与示例
- setTimeout异步加载
- 客户端用TortoiseSVN检出代码
- oracle学习笔记(三) DCL 数据控制语言与 DDL 数据定义语言
- 手把手编写PHP MVC框架实例教程
- PostgreSQL在Update时使用Substring函数截取字符串并且加上CASE WHEN THEN条件判断
- CF 317 A. Lengthening Sticks(容斥+组合数学)
- ESP WIFI
- Spark:几种给Dataset增加列的方式、Dataset删除列、Dataset替换null列
- mysql查询 根据年月日的查询
- SpringBoot配置属性之NOSQL
- HALCON之喷码OCR识别案例