随笔分类 - 算法
摘要:算法概述 0.1 算法分类 十种常见排序算法可以分为两大类: 非线性时间比较类排序:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn),因此称为非线性时间比较类排序。 线性时间非比较类排序:不通过比较来决定元素间的相对次序,它可以突破基于比较排序的时间下界,以线性时间运行,因此
阅读全文
摘要:一、接口类 接口类的实现主要为了接口化,归一化,统一化,就是每个类的方法都是固定的名称from abc import abstractmethod, ABCMeta class Payment(metaclass=ABCMeta): """父类实现的方法加入子类继承了必须实现,否则报错""" @ab
阅读全文
摘要:设计模式 设计模式六大原则: 开闭原则:一个软件实体入类、模块和函数应该对扩展开放,对修改关闭。即软件实体应该在不修改原有代码的情况下进行扩展 里氏替换原则:所有引用基类(父类)的地方必须能够透明的使用其子类的对象 依赖倒置原则:高层模块不应该依赖底层模块,二者都应该依赖其抽象:抽象不应该依赖细节;
阅读全文
摘要:数据结构基础 数据结构 定义:简单来说,数据结构就是设计数据以何种方式组织并存储在计算机中。比如:列表、集合与字典等都是一种数据结构。 PS:“程序=数据结构+算法” 列表:在其他编程语言中称为“数组”,是一种基本的数据结构类型。 关于:列表的存储问题!数据结构的分类: 线性结构:数据结构中的元素存
阅读全文
摘要:算法基本概念 算法: 计算过程,解决问题的方法, 时间复杂度 用来评估算法运行效率的一个东西 以上几种算法分别表示了 算法的几种时间复杂度 依次为:O(1) O(N) O(N**2) O(N**3) 时间复杂度是用来估计算法运行时间的一个式子(单位)。 一般来说,时间复杂度高的算法比复杂度低的算法慢
阅读全文

浙公网安备 33010602011771号