zoukankan      html  css  js  c++  java
  • 刷LeetCode的简易姿势

    近期抽空刷了刷LeetCode,算是补补课。

    由于不是很习惯直接在网页上Coding&Debug,所以还是在本地环境下进行编码调试,觉得基本OK后再在网页上提交。

    主要采用Python3进行提交。方便起见,准备了一个基本的脚本demo,用于满足如下需求:

    • 记录题目和自己的题解,便于回溯;

    • 进行单元测试,在提交发生错误后,将出错的测试用例加入单元测试中,测试采用pytest框架;

    • 进行性能分析,由于题解一般都不长,使用line_profiler工具逐行进行分析,找到效率瓶颈,优化性能。

    脚本Demo如下:

    # 要求 & 说明
    
    class Solution:
        def do_something(self, inputs):
            return
    
    def test_solution():
        solu = Solution()
        inputs = []
        output = []
        assert solu.do_something(inputs) == output
    
    if __name__ == '__main__':
        from line_profiler import LineProfiler
        
        solu = Solution()
        inputs = []
        lp = LineProfiler()
        lp_wrapper = lp(solu.do_something)
        lp_wrapper(inputs)
        lp.print_stats()
    
  • 相关阅读:
    安装tomcat
    sed
    a'w'k
    dwr??
    tomcat-性能?
    windows清理命令
    markdown超链接怎么写?
    ※剑指offer系列19:二叉搜索树与双向链表
    剑指offer系列17:二叉搜索树的后序遍历序列
    剑指offer系列18:二叉树中和为某一值得路径
  • 原文地址:https://www.cnblogs.com/lylec/p/13781365.html
Copyright © 2011-2022 走看看