小编Jus*_*tin的帖子

Big O 正式定义中的常量

我正在修改 Big O 和其他相关边界的正式定义,有些事情让我感到困惑。在我正在阅读的书中 (Skiena) Big O 被定义为:

f(n) = O(g(n)) 当存在一个常数 c 使得 f(n) 对于某个 n > n0 的值总是 <= c*g(n)

这对我来说通常是有意义的。我们只关心足够大的 n 值,以至于增长率实际上很重要。但是为什么将 g(n) 乘以 c?似乎我可以为 c 选择一个非常大的值,并通过消除较小的 g(n) 值的大小来使整个事情变得随意。

辅助问题:选择将算法分类为复杂性类时,是拇指的一般规则,只需根据大O的定义选择仍然保存的最低增长类?根据定义,将恒定时间算法分类为 O(n!) 似乎是有效的,因为 f(n) 将 <= c*g(n)。当然,这没有任何价值。

谢谢!

algorithm big-o asymptotic-complexity

8
推荐指数
1
解决办法
1116
查看次数

Prolog列表成员资格,返回多个结果

我有一个标准程序来确定列表的成员资格:

member(X, [X|_]).  
member(X, [_|T]) :- member(X, T).
Run Code Online (Sandbox Code Playgroud)

当我提出以下查询时,我不明白的原因是:

?- member(a,[a,b]).
Run Code Online (Sandbox Code Playgroud)

结果是

True;  
False.
Run Code Online (Sandbox Code Playgroud)

我会想到,在使用第一条规则满足目标时(作为列表的头部),将返回True,这将是if的结束.看起来好像是在试图用第二条规则来满足目标并且失败了?

Prolog翻译是SWI-Prolog.

prolog swi-prolog prolog-toplevel

6
推荐指数
1
解决办法
3344
查看次数

Macports 不安装手册页

我正在运行OSX Mavericks并已安装Macports。我gcc通过Macports它安装,工作正常。但是,当我输入时,man gcc我只得到:

No manual entry for gcc
Run Code Online (Sandbox Code Playgroud)

有人告诉我需要将以下内容添加到我的.bash_profile

export MANPATH=/opt/local/share/man:$MANPATH
Run Code Online (Sandbox Code Playgroud)

我已经做了但没有效果。Macports 是否确实安装了相应的手册页?“port”命令的手册页以及其他预装工具(例如 clang)都可以正常工作。

有什么帮助吗?干杯。

gcc macports

5
推荐指数
1
解决办法
1158
查看次数

Sublime Text 2的Xcode颜色主题

有没有人知道我是否可以导入与Xcode中使用的语法颜色相匹配的Sublime Text的配色方案?我看起来高低,找不到任何东西.我喜欢崇高,但我不喜欢配色方案而更喜欢Xcode.

干杯!

xcode sublimetext sublimetext2

0
推荐指数
1
解决办法
6726
查看次数