小编Lad*_*dih的帖子

如何在OSX中将vim更新为8.0版本?

我目前使用的vim是7.3版本.

VIM - Vi IMproved 7.3 (2010 Aug 15, compiled Jun 14 2016 16:06:49)
Compiled by root@apple.com
Run Code Online (Sandbox Code Playgroud)

我试图通过命令将vim更新为8.0:

git clone https://github.com/vim/vim.git
cd vim/src
make
Run Code Online (Sandbox Code Playgroud)

但是,它不起作用.它仍然是vim 7.3.

vim

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

如何避免java中重复的代码?

我只是编程的初学者.uf是一个union-find类,其方法union连接两个节点的根.如果打开任何邻居,这段代码负责打开网格的站点并将站点与其邻居联合.如果其中一个邻居已满,则填写与该站点连接的所有节点.这是实际的代码:

        if(i == 1){
            uf.union(len*len, xyTo1D(i,j));
            if(existAndOpen(i+1,j)){
                uf2.union(xyTo1D(i+1,j), xyTo1D(i,j));
                uf.union(xyTo1D(i,j), xyTo1D(i+1,j));
            }
            if(existAndOpen(i-1,j)){
                uf2.union(xyTo1D(i-1,j), xyTo1D(i,j));
                uf.union(xyTo1D(i,j), xyTo1D(i-1,j));
            }
            if(existAndOpen(i,j-1)){
                uf2.union(xyTo1D(i,j-1), xyTo1D(i,j));
                uf.union(xyTo1D(i,j), xyTo1D(i,j-1));
            }
            if(!(j == len && i == len)){
                if(existAndOpen(i,j+1)){
                    uf2.union(xyTo1D(i,j+1), xyTo1D(i,j));
                    uf.union(xyTo1D(i,j), xyTo1D(i,j+1));
                }
            }
        }
        else{
        if(existAndFull(i+1,j)){
            uf2.union(xyTo1D(i+1,j), xyTo1D(i,j));
            uf.union(xyTo1D(i,j), xyTo1D(i+1,j));
        }
        if(existAndFull(i-1,j)){
            uf2.union(xyTo1D(i-1,j), xyTo1D(i,j));
            uf.union(xyTo1D(i,j), xyTo1D(i-1,j));
        }
        if(existAndFull(i,j-1)){
            uf2.union(xyTo1D(i,j-1), xyTo1D(i,j));
            uf.union(xyTo1D(i,j), xyTo1D(i,j-1));
        }
        if(!(j== len && i == len)){
            if(existAndFull(i,j+1)){
                uf2.union(xyTo1D(i,j+1), xyTo1D(i,j));
                uf.union(xyTo1D(i,j), xyTo1D(i,j+1));
            }
        }
        if(existAndOpen(i+1,j)){
            uf.union(xyTo1D(i,j), xyTo1D(i+1,j));
        }
        if(existAndOpen(i-1,j)){
            uf.union(xyTo1D(i,j), xyTo1D(i-1,j));
        }
        if(existAndOpen(i,j-1)){ …
Run Code Online (Sandbox Code Playgroud)

java

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

为什么对于小尺寸数据多次调用 numpy.linalg.norm 会很慢?

import numpy as np
from datetime import datetime
import math

def norm(l):
    s = 0
    for i in l:
        s += i**2
    return math.sqrt(s)

def foo(a, b, f):
    l = range(a)
    s = datetime.now()
    for i in range(b):
        f(l)
    e = datetime.now()
    return e-s

foo(10**4, 10**5, norm)
foo(10**4, 10**5, np.linalg.norm)
foo(10**2, 10**7, norm)
foo(10**2, 10**7, np.linalg.norm)
Run Code Online (Sandbox Code Playgroud)

我得到以下输出:

0:00:43.156278
0:00:23.923239
0:00:44.184835
0:01:00.343875
Run Code Online (Sandbox Code Playgroud)

似乎当np.linalg.norm多次调用小尺寸数据时,它的运行速度比我的标准函数慢。

其原因何在?

python performance numpy

4
推荐指数
1
解决办法
6605
查看次数

如何设置按键绑定来切换 tmux 中的窗格?

这是我的.tmux.conf

set-option -g prefix  C-\
bind-key C-p  select-pane -U
bind-key C-n  select-pane -D
bind-key C-b  select-pane -L
bind-key C-f  select-pane -R
Run Code Online (Sandbox Code Playgroud)

我想要的是绑定C-\ C-b切换到左窗格、C-\ C-f切换到右窗格等等。但是当我启动 tmux 时
我收到了消息。 知道怎么做吗?.tmux.conf:2: usage: set-option [-agosquw] [-t target-session|target-window] option [value]

tmux

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

C++程序在代码块中编译和运行,但无法在终端中编译

我创建了一个包含多个源文件和头文件的C++项目.该程序在代码块中编译和运行良好,但我无法在终端中编译它.

所有文件都在同一个文件夹中.

这是我输入的命令:

clang++ -std=c++11 main.cpp file1.cpp file1.h 
Run Code Online (Sandbox Code Playgroud)

表明:

clang: warning: treating 'c-header' input as 'c++-header' when in C++ mode, this behavior is deprecated
Run Code Online (Sandbox Code Playgroud)

还有一大堆错误:

error: use of undeclared identifier 'std' 
Run Code Online (Sandbox Code Playgroud)

在头文件中.

c++ terminal codeblocks c++11

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

java中的Comparable是什么?

我知道 Comparable 是一个接口,但我看到了一些代码,例如ArrayList<Comparable>, public Comparable f(), public void f(Comparable a)。似乎 Comparable 是一个类。上面这些代码是如何实现的?

import java.util.*;
public class MinHeap
{
    public  MinHeap()
    {
        elements = new ArrayList<Comparable>();
        elements.add(null); 
    }
    ....
}

public class BinarySearchTree
{
    ...
    public void add(Comparable obj)
    {
        Node newNode = new Node();
        newNode.data = obj;
        newNode.left = null;
        newNode.right = null;
        if (root == null) root = newNode;
        else root.addNode(newNode);
    }
    ...
}
Run Code Online (Sandbox Code Playgroud)

java comparable

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

标签 统计

java ×2

c++ ×1

c++11 ×1

codeblocks ×1

comparable ×1

numpy ×1

performance ×1

python ×1

terminal ×1

tmux ×1

vim ×1