V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ericgui
V2EX  ›  程序员

leetcode 具体是怎么运行你的代码片段的?

  •  
  •   ericgui · 2022-01-05 16:28:57 +08:00 · 2295 次点击
    这是一个创建于 813 天前的主题,其中的信息可能已经有所发展或是发生改变。

    比如某一个题,你写了一个函数,提交了,运行结果你通过了

    这个在 leetcode 后台具体是怎么实现的?你传过去的是一个大大长长的字符串,然后他们要把这个字符串写入某个文件,比如 py 文件,比如 Java 文件,比如 js 文件

    然后有一个外部的函数来调用这个文件里的函数?

    后台用什么运行? docker ?

    6 条回复    2022-01-06 13:49:12 +08:00
    Mutoo
        1
    Mutoo  
       2022-01-05 16:37:45 +08:00 via iPhone
    https://github.com/zhblue/hustoj
    可以参考开源 oj 本质就是在一个受限环境编译运行你的代码,跑测试数据并统计结果。
    mrlmh00
        2
    mrlmh00  
       2022-01-05 16:40:02 +08:00
    你看看开源的 oj 怎么实现的呗
    https://github.com/zhblue/hustoj
    mrlmh00
        3
    mrlmh00  
       2022-01-05 16:40:43 +08:00
    @Mutoo 卧槽巧了。。我发完了刷新出来你的
    zouzou0208
        4
    zouzou0208  
       2022-01-05 17:31:34 +08:00 via iPhone   ❤️ 1
    恰好我完整的研究过,可以参考我这篇文章

    力扣的程序是如何运行的:
    https://github.com/yihong0618/gitblog/issues/205
    zouzou0208
        5
    zouzou0208  
       2022-01-05 17:32:44 +08:00 via iPhone
    是 docker 运行,但做了安全保护,无法逃逸。这篇文章写了 python 的,关于其它语言可以用这个方式自己研究。
    constructor
        6
    constructor  
       2022-01-06 13:49:12 +08:00
    前几天对 replit 运行代码研究过:使用 docker 运行单个代码文件或项目,
    https://v2ex.com/t/821487#r_11174090
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3204 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 12:18 · PVG 20:18 · LAX 05:18 · JFK 08:18
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.