我刚开始在一个数据结构课,教师已经张贴了10个问题,并询问其中一个大O。根据我读过的文章,我假设这段代码的大O将是O(1),因为数据参数是单个数据元素。但是,它确实执行了多次,这取决于数字的大小,所以这会使它成为O(N)吗?
public class Main {
public static void main(String[] args) {
f(100000);
}
public static long f (int n) {
long sum = 0;
for (long i = 2; i < n; i =
我有一个web应用程序,它的一个功能是不断地将行附加到一个大表中。这些行大致如下所示:
id bigint not null primary key
visited datetime not null
ip_address
# Other fields
这是一个追踪表,你可能已经猜到了。这个表的使用完全是附加的,也就是说,在插入行之后没有修改行。
但是,我们的数据量已经显著增加,因此有必要将统计数据单独处理到其他表中,而不是立即查询和计算数据。基本上,我已经编写了一个独立的程序,大致可以做到这一点(伪代码)。
while (true) {
Select rows from tracki
在统计物理中,我们经常试图找出配分函数,它表示为
βe^(-\beta E_i),其中\ Z=\sum_i是逆温度。e^(-\beta E_i),求和项称为玻尔兹曼权重。
现在在低温下,β变得相当大,我们面临着一种情况,我们必须计算一个非常大的正数或负数的指数(取决于E_i的符号)。
在普通编程语言(例如Python)中,如果为x>=1000,则本征指数函数给出e^x的无穷大。
例如,在Python 3中,我尝试用泰勒级数展开来估算:
x = 1000
n = int(input('Enter number of terms in Taylor series\n'))