小编har*_*503的帖子

球拍开始形式

(define mystery2 
  (lambda (L)
    (if (null? L)
        L
        (begin
          (displayln L)
          (append (mystery2 (cdr L))
                  (list (car L)))))))
Run Code Online (Sandbox Code Playgroud)

我运行它 (mystery2 '((1 2) (3 4) 5 6))

在这里,我不确定“开始”函数的作用。

另外,当我写“displayln L”时,它只给我们((1 2) (3 4) 5 6)). 因为它是递归,所以不应该打印出递减的值吗?

请帮助我理解为什么这里使用“开始”并且 displayln 是这样工作的。

代码本身没有问题。

scheme racket

3
推荐指数
1
解决办法
2320
查看次数

Python cvxopt求解器qp如何工作

我想使用cvxopt求解器qp并计算拉格朗日乘数,但我想知道它是如何"完全"的.我试图找到更多的信息,但没有太多关于cvxopt的信息.我正在研究这个示例问题,我不确定这些变量的含义以及它们如何提出解决方案.

这个例子是这样的:

minimize: 2x_{1}^{2} + x_{2}^{2} + x_{1}x_{2} + x_{1} + x_{2}
subject to: x_{1} >= 0
            x_{2} >= 0
            x_{1} + x_{2} = 1
Run Code Online (Sandbox Code Playgroud)

可以通过使用来解决

Q = 2*matrix([ [2, .5], [.5, 1] ])
p = matrix([1.0, 1.0])
G = matrix([[-1.0,0.0],[0.0,-1.0]])
h = matrix([0.0,0.0])
A = matrix([1.0, 1.0], (1,2))
b = matrix(1.0)
sol=solvers.qp(Q, p, G, h, A, b)
print(sol['x'])
Run Code Online (Sandbox Code Playgroud)

python cvxopt

3
推荐指数
1
解决办法
6566
查看次数

从Python中的字典中压缩两个值

我试图使用Python numpy在字典中压缩两个值,但它不是很成功.拉链的意思是这样的:

  1. 我有一个叫dict的字典,里面看起来像{'a0': [1, 2, 3], 'a1': [4, 5, 6]}.
  2. 然后我想将这个字典dict值压缩为:( [(1, 4), (2, 5), (3, 6)] 每个键中的一个元素)

python dictionary numpy

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

为什么在C中ptr =(int*)12和*ptr = 42编程错误?

有一个C代码,我想知道哪里是一个坏的部分.

int main() {
    // PART A
    int a = 12;
    printf("%p\n", &a);
    int *ptr = &a;
    *ptr = 15;
    printf("%i\n", a);
    // PART B: something bad starts
    ptr = (int*)12;
    *ptr = 42;
    printf("%i\n", *ptr);
}
Run Code Online (Sandbox Code Playgroud)

在PART(B)中,为什么p中的ptr =(int*)12和*ptr = 42编程错误?

c

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

条件跳转或移动取决于未初始化的值 strcat

我知道发生这个 valgrind 错误是因为我试图使用未初始化的东西。下面的代码是导致此错误的代码。它正在做的是尝试读取 Racket 代码并获取每个符号,例如 + 或define。(标记化)我不希望您彻底理解代码,因为还有很多其他代码可以理解它在做什么。但是,如果您能就我在该行收到此错误的原因提出您的想法,我将不胜感激,symbol = strcat(symbol, newsymbol);

char* newsymbol = talloc(sizeof(char)*2);
                *newsymbol = charRead;
                newsymbol[1] = '\0';
                symbol = strcat(symbol, newsymbol);
Run Code Online (Sandbox Code Playgroud)

c tokenize racket

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

标签 统计

c ×2

python ×2

racket ×2

cvxopt ×1

dictionary ×1

numpy ×1

scheme ×1

tokenize ×1