小编Ton*_*ous的帖子

Fibonacci序列的计算复杂性

我理解Big-O表示法,但我不知道如何为许多函数计算它.特别是,我一直试图弄清楚Fibonacci序列的幼稚版本的计算复杂性:

int Fibonacci(int n)
{
    if (n <= 1)
        return n;
    else
        return Fibonacci(n - 1) + Fibonacci(n - 2);
}
Run Code Online (Sandbox Code Playgroud)

Fibonacci序列的计算复杂度是多少以及如何计算?

complexity-theory big-o fibonacci time-complexity

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

时间浪费execv()和fork()

目前我正在学习fork(),并execv()和我有关于组合的效率问题.

我看到了以下标准代码:

pid = fork();
if(pid < 0){
    //handle fork error
}
else if (pid == 0){
    execv("son_prog", argv_son);
//do father code
Run Code Online (Sandbox Code Playgroud)

我知道fork()克隆整个过程(复制整个堆等)并execv()用新程序替换当前地址空间.考虑到这一点,使用这种组合不是非常低效吗?我们正在复制进程的整个地址空间,然后立即覆盖它.

所以我的问题是:
即使我们有浪费,使用这个组合(而不是其他解决方案)使人们仍然使用它的优势是什么?

unix linux operating-system fork multiprocessing

43
推荐指数
3
解决办法
2836
查看次数

Scala集合中的可变与不可变

我是Scala的新手,我正在尝试理解集合层次结构.我看到有"可变"和"一成不变"的集合之间的区别,但我不明白这是什么,其实就是在执行层面,以及如何这涉及到valvar.有人能给我一些见解吗?此外,每个集合类都有"可变"版本和"不可变"版本,还是有些类只能是"可变"或"不可变"?

collections containers scala scala-collections

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

"零复制网络"与"内核绕过"?

"零拷贝网络"和"内核旁路"有什么区别?它们是两个含义相同或不同的短语吗?内核绕过"零复制网络"中使用的技术,这是关系吗?

linux networking operating-system network-programming zero-copy

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

在GCC中对齐malloc()?

GCC或glibc中是否有任何标准化函数在对齐指针处分配内存块?像MSVC中的_align_malloc()一样?

c malloc gcc

36
推荐指数
5
解决办法
7万
查看次数

在Linux中将物理地址转换为虚拟地址并读取其内容

我有Linux,我有一个物理地址:(即0x60000000).
我想从用户空间Linux程序中读取此地址.

该地址可能位于内核空间中.

c unix linux security operating-system

24
推荐指数
2
解决办法
4147
查看次数

如何使用angular.element('#id')获取输入元素的值

当我试图使用angular.element获取input元素的值时,它返回undefined.这是我的代码:

$scope.registerUser = function() {
    console.log(angular.element('#username').value); // undefined
    console.log(document.getElementById('username').value); // sampleName
};
Run Code Online (Sandbox Code Playgroud)

如何使用angular.element获取值

javascript jquery angularjs

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

"ng add"在Angular CLI 6.0.8中做了什么

ng add <collection>Angular 6 的命令似乎没有任何文档.这似乎是一个新功能,但我不知道它的作用.

它没有在官方Wiki页面上列出:

https://github.com/angular/angular-cli/wiki

该命令有一个子Wiki页面:

https://github.com/angular/angular-cli/wiki/add

但它说的与命令行有关.

添加对项目库的支持.

他们指的是什么图书馆?它是像https://material.angular.io/这样的库还是其他的东西?

angular-cli angular

16
推荐指数
1
解决办法
4943
查看次数

为什么同时读取多个文件比按顺序读取要慢?

我试图解析目录中找到的许多文件,但是使用多处理会减慢我的程序.

# Calling my parsing function from Client.
L = getParsedFiles('/home/tony/Lab/slicedFiles') <--- 1000 .txt files found here.
                                                       combined ~100MB
Run Code Online (Sandbox Code Playgroud)

以下来自python文档的示例:

from multiprocessing import Pool

def f(x):
    return x*x

if __name__ == '__main__':
    p = Pool(5)
    print(p.map(f, [1, 2, 3]))
Run Code Online (Sandbox Code Playgroud)

我写了这段代码:

from multiprocessing import Pool
from api.ttypes import *

import gc
import os

def _parse(pathToFile):
    myList = []
    with open(pathToFile) as f:
        for line in f:
            s = line.split()
            x, y = [int(v) for v in s]
            obj = CoresetPoint(x, y) …
Run Code Online (Sandbox Code Playgroud)

python io performance multiprocessing python-2.7

15
推荐指数
2
解决办法
5456
查看次数

求解:T(n)= T(n/2)+ n/2 + 1

我很难用O表示法定义以下算法的运行时间.我的第一个猜测是O(n),但是迭代和我应用的数字之间的差距并不稳定.我怎么错误地定义了这个?

public int function (int n ) 
{
  if ( n == 0) {
    return 0;
  }

  int i = 1;
  int j = n ;
  while ( i < j ) 
  {
    i = i + 1;
    j = j - 1;
  }
  return function ( i - 1) + 1;
}
Run Code Online (Sandbox Code Playgroud)

computer-science time-complexity asymptotic-complexity computer-science-theory

13
推荐指数
2
解决办法
1629
查看次数