abc612008 最近的时间轴更新
abc612008

abc612008

V2EX 第 241732 号会员,加入于 2017-07-20 08:42:47 +08:00
Rust 写的基于 WebRTC 的开源远程桌面软件
  •  1   
    分享创造  •  abc612008  •  2024-02-08 09:32:50 AM  •  最后回复来自 benjaminx
    4
    做了一个解谜游戏平台,欢迎大家来挑战
    分享创造  •  abc612008  •  2018-09-07 15:55:54 PM  •  最后回复来自 skschema
    12
    新做了个网页解密网站,试试你能到第几关
  •  15   
    分享创造  •  abc612008  •  2019-03-19 10:57:30 AM  •  最后回复来自 mayl1209
    567
    abc612008 最近回复了
    @lscho 我第一次听说一个没有 map/filter/reduce/fold,没有 immutable,没有 sum type,没有 pattern matching,不支持 tail recursion optimization 的语言能叫函数式的
    15 天前
    回复了 levelworm 创建的主题 程序员 不知道为什么,我很厌恶 map()
    建议写写 ML 语言脱敏。或者写下 scala/kotlin 这种 map 比较好看的语言 e.g. `listOf(1,2,3).map{it * 2} == listOf(2,4,6)`
    17 天前
    回复了 pureGirl 创建的主题 程序员 Python 中线程和协程的区别是什么
    多线程:
    1. 同一时间可以有两个指令在被 CPU 执行。
    2. 线程是系统/硬件级的概念。
    3. 例子:咖啡店有两个(机器人)店员在同时做咖啡。(你也没法写软件多出一个店员)

    协程
    1. 同一时间只有一个指令在被执行,但是可以是完全不同地方的指令。
    2. 协程是应用级的概念。
    3. 一个店员在做两杯咖啡,在等加热的时候去“同时”做另一杯。(因此协程通常只有在 IO bound 的时候才比较有作用)

    当然也可以既有多线程也有协程。

    我觉得你的问题是,既然 GIL 导致没有办法同时真的执行两个 python 语句,那多线程不就和协程一样了。我的理解是 python 的多线程仍然是多个系统线程,而 GIL 只在 python 代码里会被 lock ,如果是在做 IO bound/syscalls 或者甚至 numpy,pandas 在做计算的时候都会 release GIL 。
    > 严禁使用任何代码生成工具或者外部辅助手段解题,包括但不限于将题目描述、测试用例或解题代码输入到外部辅助工具中的行为

    lc 竞赛用 LLM 生成代码是禁止的。
    29 天前
    回复了 aqtata 创建的主题 C++ 这种情况如何消除几百个 if/else
    @ysc3839 #62 已经有点复杂到一般人看不懂了... 其实取决于场景,甚至可以直接丢 dll/so 里然后运行时加载库直接找对应的符号(
    29 天前
    回复了 aqtata 创建的主题 C++ 这种情况如何消除几百个 if/else
    @bluearc #57 都用上 map 了那不如这样:

    ```
    #include <iostream>
    #include <functional>

    constexpr int maxN = 100;

    class Foo {
    public:
    static void invoke(int i) {
    _mapping[i](i);
    }

    private:
    static std::function<void(int)> _mapping[maxN];

    template <int N>
    struct FooHelper {
    FooHelper() {
    _mapping[N] = [](int n) {
    std::cout << "Foo<" << N << "> (" << n << ")" << std::endl;
    };
    }
    };
    template <int N>
    struct Initer : Initer<N-1> {
    FooHelper<N> _foo;
    };
    static Initer<maxN> _initer;
    };
    template<>
    struct Foo::Initer<0> {};
    std::function<void(int)> Foo::_mapping[maxN];
    Foo::Initer<maxN> Foo::_initer;

    int main(){
    int n;
    std::cin>>n;
    Foo::invoke(n);
    }
    ```

    虽然感觉也挺丑的
    29 天前
    回复了 aqtata 创建的主题 C++ 这种情况如何消除几百个 if/else
    @ysc3839 #56 你这个调用一次 func 的时间是 O(n)的吗..难道要从 0 开始试
    ```
    ❯ ./a.out 7
    n = 7
    test<2>(7)
    test<3>(7)
    test<5>(7)
    test<7>(7)
    func<7>()
    ```
    30 天前
    回复了 aqtata 创建的主题 C++ 这种情况如何消除几百个 if/else
    @bluearc 这是 gpt 写的吗?模板参数丢个运行时变量进去怎么可能编译的过。
    Backblaze $6/tb/mo 大概每 gb 每月 4 分钱?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2902 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 16ms · UTC 13:16 · PVG 21:16 · LAX 05:16 · JFK 08:16
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.