O(sqrt(B))鉴于它B是一个整数,我无法理解这个时间复杂度。
例如,如果我有一个函数...
int GetResult(int A, int B)
{
}
Run Code Online (Sandbox Code Playgroud)
...这个函数的时间复杂度为O(sqrt(B)),时间复杂度到底是多少?
抱歉,如果这有点含糊……我真的不知道还能如何解释。
我需要以-1/2 的幂计算矩阵A,这基本上意味着初始矩阵的逆的平方根。
如果 A 是奇异的,则使用MASS 包中的ginv函数计算 Moore-Penrose 广义逆,否则使用求解函数计算正则逆。
矩阵 A 定义如下:
A <- structure(c(604135780529.807, 0, 58508487574887.2, 67671936726183.9,
0, 0, 0, 1, 0, 0, 0, 0, 58508487574887.2, 0, 10663900590720128,
10874631465443760, 0, 0, 67671936726183.9, 0, 10874631465443760,
11315986615387788, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1), .Dim = c(6L,
6L))
Run Code Online (Sandbox Code Playgroud)
我通过等级和维度的比较来检查奇异性。
rankMatrix(A) == nrow(A)
Run Code Online (Sandbox Code Playgroud)
上面的代码返回 FALSE,所以我必须使用ginv来获得相反的结果。A 的倒数如下:
A_inv <- ginv(A)
Run Code Online (Sandbox Code Playgroud)
使用 expm 包中的 sqrtm 函数计算逆矩阵的平方根。
library(expm)
sqrtm(A_inv)
Run Code Online (Sandbox Code Playgroud)
该函数返回以下错误:
solve.default(X[ii, …
我正在努力解决这个问题,我需要找到并在控制台中显示所有数字,其平方根是一个整数,而不使用数学库.它在C中,所以我不能使用math.h而且我认为我实际上不需要像巴比伦塔这样的算法,或者我需要一个算法?
我在C中有这个小程序,它使用递归函数计算x正整数的平方根N(使用while循环实现).如果我x用这个计算:
x = (1/2)*(x + N/x) //x0 = 1.0
Run Code Online (Sandbox Code Playgroud)
然后x继续增长到inf,然后是nan.但是,如果我使用这个:
x = (x + N/x)/2 //x0 = 1.0
Run Code Online (Sandbox Code Playgroud)
它工作正常,为什么?谢谢.
好的,我是java的初学者,通过网站和书籍自学.我尝试了一个带有for循环和while循环的简单平方根计算器(我已经包含了我在下面尝试的内容).可悲的是,当我输入一个数字时,我的所有代码都会终止.任何帮助,将不胜感激!
import java.util.Scanner;
public class The2RootProdject {
public static void main(String args[]) {
Scanner input = new Scanner(System.in);
double rootIt = input.nextDouble();
double dummy = 0.0000000;
while (dummy != dummy * dummy) {
dummy += 0.0000001;
if (rootIt == dummy * dummy) {
System.out.println("the squar root of " + rootIt + " is "
+ (dummy * dummy));
}
}
}
}
Run Code Online (Sandbox Code Playgroud) 据我所知,二分是缩小您的搜索范围并在间隔内达到特定值。请给我一个关于如何制作通用代码以找到平方根的示例。我认为采用三个变量的方式是低、中、高。高 = 用户输入,低 = 0,中(低 + 高)/2,问题是如何更改值。
这是我的代码:
import cmath
root = (cmath.sqrt(25))
print (root)
raw_input()
Run Code Online (Sandbox Code Playgroud)
我面临的问题是root的结果是5 + 0j,这是不可取的,我只想要平方根.我怎样才能解决这个问题?