小编mil*_*los的帖子

如何在STL设置下找到小于搜索键的第一个值?

例如,我有一组值std::set:

{1, 2, 3, 5, 6}
Run Code Online (Sandbox Code Playgroud)

和搜索键,让它成为4,我想找到第一个val.不到搜索键,3在这种情况下,该怎么办?

在Java中有功能greater(),lower()TreeSet

c++ stl

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

用nosetests运行Django测试

我的python应用程序测试是在远程服务器上使用命令执行的nosetests.我无法修改测试的启动方式,也无法为其添加选项.我有测试的Django应用程序,但测试不正常.

我的项目结构:

project
??? README.md
??? setup.py
??? mysite
?   ??? blog
?   ?   ??? __init__.py
?   ?   ??? models.py
?   ?   ??? tests.py
|   |   ??? ...
?   ??? db.sqlite3
?   ??? manage.py
?   ??? mysite
?   ?   ??? __init__.py
?   ?   ??? settings.py
|   |   ??? ...
Run Code Online (Sandbox Code Playgroud)

命令nosetestsproject目录中执行.我想要正确运行tests.py哪个有2个Django测试用例.我尝试tests在项目根目录中创建目录并使用以下方法调用测试DiscoverRunner:

os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'
test_dir = os.path.dirname(os.path.dirname(__file__)) # one level up
sys.path.insert(0, os.path.join(test_dir, 'mysite'))

class ServerTest(unittest.TestCase):
    def test_runtests(self):
        django.setup() …
Run Code Online (Sandbox Code Playgroud)

python django nose django-nose

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

在没有递归的情况下在图中寻找桥梁

我有这个代码可以在连接图中找到桥:

void dfs (int v, int p = -1) {
    used[v] = true;
    tin[v] = fup[v] = timer++;
    for (size_t i=0; i<g[v].size(); ++i) {
        int to = g[v][i];
        if (to == p)  continue;
        if (used[to])
            fup[v] = min (fup[v], tin[to]);
        else {
            dfs (to, v);
            fup[v] = min (fup[v], fup[to]);
            if (fup[to] > tin[v])
                printf("%d %d", v, to);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

如何在不使用递归的情况下重写它?我知道,可以这样做,我应该使用堆栈,但是必须在递归调用 dfs() 之后执行此行,而我无法使用堆栈实现:

fup[v] = min(fup[v], fup[to])
Run Code Online (Sandbox Code Playgroud)

那么,如何迭代地重写我的算法?

algorithm recursion graph

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

如何将所有流量路由到本地socks5服务器?

我已经实现了SOCKS5服务器(它通过 SSH将连接转发到远程),它在127.0.0.1:7070上运行。

现在我正在尝试通过它路由所有流量。我认为这是不可能的,但是像proxifier这样的应用程序可以做到这一点......但是如何做到呢?

我正在寻找Windows上的Python解决方案。有任何想法吗?

或者至少让 Chrome/IE 以这种方式工作......

python proxy networking socks

5
推荐指数
0
解决办法
637
查看次数

奇怪的海湾合作委员会警告和消毒剂崩溃

我在我的项目中遇到了一些奇怪的 gcc 警告。让我们看看这个包含 3 个文件的简单示例:

\n\n

结构体.h

\n\n
typedef struct {\n    int a;\n    long b;\n    char *c;\n} myStruct;\n
Run Code Online (Sandbox Code Playgroud)\n\n

函数c

\n\n
#include <stdio.h>\n#include <stdlib.h>\n#include "struct.h"\n\nmyStruct* func() {\n    myStruct* new = (myStruct*) malloc(sizeof(myStruct));\n    new->a = 42;\n    new->b = 84;\n    new->c = "lol_ok\\n";\n    return new;\n}\n\nvoid prn(myStruct* x) {\n    printf("%d\\n", x->a);\n}\n
Run Code Online (Sandbox Code Playgroud)\n\n

主程序

\n\n
#include <stdlib.h>\n#include <stdio.h>\n#include <stdint.h>\n\n#include "struct.h"\n\nint main() {\n    myStruct* ms = func();\n    prn(ms);\n    return 0;\n}\n
Run Code Online (Sandbox Code Playgroud)\n\n

所以我收到以下警告:

\n\n
main.c: In function \xe2\x80\x98main\xe2\x80\x99:\nmain.c:8:24: warning: initialization makes pointer from integer without a …
Run Code Online (Sandbox Code Playgroud)

c gcc compiler-warnings

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

分析 C++ rand()

我正在尝试预测由C++ rand()函数生成的数字。这是代码的链接,它可能使用:单击

这是我模拟rand() 的代码:

#include <iostream>
#include <cstdlib>
#include <ctime>

using namespace std;

int main() {
        srand(time(0));
        unsigned a = rand();
        unsigned b = rand();
        cout << (a * 1103515245U + 12345U) % 0x7fffffffU << '\n';
        cout << b << '\n'; // they should match, right? But they don't...
        return 0;
}
Run Code Online (Sandbox Code Playgroud)

为什么我的值与b不匹配?

c++ random cryptography

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

如何在C++中为此指定指针?

我正在尝试实现treap类,所以我有这个代码:

void item::insert(item* it) {
     if (!this)
         this = it;
     .....
Run Code Online (Sandbox Code Playgroud)

我无法用GCC编译:

error: lvalue required as left operand of assignment
Run Code Online (Sandbox Code Playgroud)

我知道,我可以简单地分配给所有成员itthis,但有另一种方式?

c++ oop

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