Sword Finger Предложение Интервью Вопрос 16. Целочисленная сила чисел (дихотомия)

Описание заголовка

Реализуйте функцию double Power (double base, int exponent), найдите степень экспоненты base. Не используйте библиотечные функции и не нужно учитывать большие числа.
Вставьте описание изображения здесь

мышление

Смотрите ссылку для деталей

код

class Solution:
	def myPow(self,x:float,n:int)->float:
		if x == 0:
			return 0
		res = 1
		if n < 0:
			x, n = 1/x, -n
		while n:
			x *= x
			n >>= 1  #(n除以2)
			if n & 1:
				res *= x
		return res
Опубликовано 227 оригинальные статьи · вона похвала 633 · просмотров 30000 +

рекомендация

отblog.csdn.net/weixin_37763870/article/details/105548144
рекомендация