标签: exponential

哪个函数增长得更快,指数或因子?

哪个函数增长得更快,指数(如2 ^ n,n ^ n,e ^ n等)或阶乘(n!)?Ps:我刚读到某个地方,n!增长快于2 ^ n.

factorial exponential

58
推荐指数
3
解决办法
7万
查看次数

指数时间复杂度的现实例子

我正在寻找一个直观的,现实世界的问题示例,该问题需要(最坏的情况)指数时间复杂度来解决我正在给出的谈话.

以下是我提出的其他时间复杂性的例子(其中许多来自这个SO问题):

  • O(1) - 确定数字是奇数还是偶数
  • O(log N) - 在字典中查找单词(使用二进制搜索)
  • O(N) - 读一本书
  • O(N log N) - 排序一副扑克牌(使用合并排序)
  • O(N ^ 2) - 检查您的购物车上是否包含所有物品
  • O(无穷大) - 掷硬币直到落在头上

有任何想法吗?

complexity-theory exponential

29
推荐指数
2
解决办法
2万
查看次数

C++中的指数运算符

我正在上C++课,我注意到只有几个数学运算符可供使用.我还注意到C++在其数学库中没有指数运算符.

为什么必须总是为此写一个函数?C++的制造商是否有理由省略此运算符?

c++ exponential

21
推荐指数
4
解决办法
4万
查看次数

Shell脚本:提升权力

你如何将m提高到n的幂?我到处搜索过这个.我发现写m**n应该有效,但事实并非如此.我正在使用#!/ bin/sh

shell exponential

21
推荐指数
3
解决办法
4万
查看次数

Python Scientific Notation精确标准化

我的目标是简单地将诸如"1.2"的字符串转换为科学记数法而不增加额外的精度.问题是我总是在输出结束时得到多余的0.

>>> input = "1.2"
>>> print '{:e}'.format(float(input))
1.200000e+00
Run Code Online (Sandbox Code Playgroud)

我正在试图找出如何获得公正1.2e+00.我意识到我可以在我的格式语句中指定精度,但我不想不必要地截断更长的字符串.我只是想压制训练0.

我尝试过使用Decimal.normalize(),它适用于所有情况,除了e <2.

>>> print Decimal("1.2000e+4").normalize()
1.2E+4
>>> print Decimal("1.2000e+1").normalize()
12
Run Code Online (Sandbox Code Playgroud)

所以这更好,除了我不想要12,我想要1.2e + 1.:P

任何建议将不胜感激!

编辑: 为了澄清,输入值已经适当地舍入到预定长度,现在是未知的.我试图避免重新计算适当的格式精度.

基本上,我可以输入值"1.23"和"1234.56",它应该是"1.23e + 0"和"1.23456e + 3".

我可能只需要检查输入字符串的长度并使用它来手动指定精度,但我想检查并确保我没有遗漏可以阻止指数格式任意添加0的东西.

python format notation exponential

19
推荐指数
2
解决办法
3万
查看次数

为什么我会收到 numpy.exp 的“ufunc 循环不支持 int 类型的参数 0”错误?

我有一个数据框,我想对列中的行子集执行指数计算。我尝试了三个版本的代码,其中两个有效。但我不明白为什么一个版本给我这个错误。

import numpy as np
Run Code Online (Sandbox Code Playgroud)

版本 1(工作)

np.exp(test * 1.0)
Run Code Online (Sandbox Code Playgroud)

版本 2(工作)

np.exp(test.to_list())
Run Code Online (Sandbox Code Playgroud)

版本 3(错误)

np.exp(test)
Run Code Online (Sandbox Code Playgroud)

它显示以下错误:

AttributeError                            Traceback (most recent call last)
AttributeError: 'int' object has no attribute 'exp'

The above exception was the direct cause of the following exception:

TypeError                                 Traceback (most recent call last)
<ipython-input-161-9d5afc93942c> in <module>()
----> 1 np.exp(pd_feature.loc[(pd_feature[col] > 0) & (pd_feature[col] < 700), col])

TypeError: loop of ufunc does not support argument 0 of type int which has no callable exp method
Run Code Online (Sandbox Code Playgroud)

测试数据通过以下方式生成:

test …
Run Code Online (Sandbox Code Playgroud)

python numpy exponential

18
推荐指数
3
解决办法
8万
查看次数

1e-9或-1e9,哪一个是正确的?

我被分配了一些旧代码,当我阅读它时,我发现它有以下形式:

float low = 1e-9;
float high = 1e9;

float lowB = 1e-9;
float highB = 1e9;

float lowL = 1e-9;
float highL = 1e9;
Run Code Online (Sandbox Code Playgroud)

所以我看到它试图用e符号定义一些范围,对吗?但是不1e-9应该是-1e9

然后价值将介于-1000000000和之间1000000000,对吗?

我不确定是什么1e-9意思?

c++ math floating-point notation exponential

15
推荐指数
1
解决办法
7万
查看次数

估计具有指数平滑和不规则事件的事件的发生率

想象一下,我有一组x的测量值,这些测量值在时间t 0 ... t N被许多过程x 0 ... x N所取.假设在时间t我想基于我不知道的长期趋势的假设来估计x的当前值,并且可以从诸如指数平滑的算法预测x.由于我们有很多进程,N可以变得非常大,我不能存储多个值(例如以前的状态).

这里的一种方法是调整正常指数平滑算法.如果样品采取定期,我会保持一个估计Ÿ ñ这样的:

y n = α.y n-1 +(1 - α).X ñ

在采样不规则的情况下,这种方法并不是很好,因为许多样本在一起会产生不成比例的影响.因此,这个公式可以适用于:

ÿ Ñ = α Ñ.ý N-1 +(1 - α Ñ).X ñ

哪里

α Ñ = È -k(吨.ñ -吨N-1 )

IE根据前两个样本之间的间隔动态调整平滑常数.我很满意这种方法,似乎有效.这是这里给出的第一个答案,Eckner在2012年的论文(PDF)中给出了这些技术的一个很好的总结.

现在,我的问题如下.我想调整上述内容来估计发生率.偶尔会发生一个事件.使用类似的指数技术,我想估计事件发生的速率.

两个明显的策略是:

  • 使用第一种或第二种技术,使用最后两个事件之间的延迟作为数据系列x n.
  • 使用第一或第二技术,使用最后两个事件之间的延迟的倒数(即速率)作为数据序列x n …

algorithm poisson smoothing exponential

14
推荐指数
1
解决办法
2124
查看次数

用非常小的值计算matlab中的函数

我在matlab中创建一个函数来计算以下函数:

在此输入图像描述

对于这个功能,我们有:

在此输入图像描述

这是我在matlab中实现的功能:

function [b]= exponential(e)
%b = ? 
b= (exp (e) -1)/e;
Run Code Online (Sandbox Code Playgroud)

当我用非常小的值测试函数时,实际上函数的极限是1,但是当数字非常小(例如1*e-20)时,极限变为零?这种现象有什么解释?难道我做错了什么?.

x= 10e-1 , f (x)= 1.0517

x= 10e-5 , f (x)=  1.0000

x= 10e-10 , f (x)=  1.0000

x= 10e-20 , f (x)=  0
Run Code Online (Sandbox Code Playgroud)

precision matlab epsilon exponential

10
推荐指数
2
解决办法
7068
查看次数

为什么(0 + 0i)^ {0} ==(nan,nan)在c ++中

看看代码吹响:

#include <complex>
#include <iostream>

int main()
{
    std::cout << std::pow( std::complex<double>(0,0), std::complex<double>(0,0) ) << "\n";
    std::cout << std::pow( std::complex<double>(0,0), double(0) ) << "\n";

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

g ++(4.8.1)给出了输出

(nan,nan)
(-nan,-nan)
Run Code Online (Sandbox Code Playgroud)

而clang ++(3.3)给出了一个输出

(-nan,-nan)
(-nan,-nan)
Run Code Online (Sandbox Code Playgroud)

但我期待(1.0,0.0).

任何人都可以解释一下吗?

c++ numeric nan complex-numbers exponential

10
推荐指数
1
解决办法
426
查看次数