如何通过使用 C# 回溯找到任何给定数字的幂?
创建一个函数来查找幂,它接受数字x和n,其中x是2,n是多少次,我们必须做幂。如果数字是偶数,那么我们必须做x*x,如果数字是奇数,则将结果与x*x相乘。继续递归调用,直到n变为0。
假设如果我们有一个数字2和8,那么2*2*2*2*2*2*2*2=256。
示例
using System;
namespace ConsoleApplication{
public class BackTracking{
public int FindPower(int x, int n){
int result;
if (n == 0){
return 1;
}
result = FindPower(x, n / 2);
if (n % 2 == 0){
return result * result;
}
else{
return x * result * result;
}
}
}
class Program{
static void Main(string[] args){
BackTracking b = new BackTracking();
int res = b.FindPower(2, 8);
Console.WriteLine(res);
}
}
}输出结果256