- 博客(6)
- 收藏
- 关注
原创 输入两棵二叉树A,B,判断B是不是A的子结构。
题目解读:题目抽象:给2棵树A,树B,判断B是否是A的子结构。子结构定义:树A和树B的根结点相等,并且树A的左子树和树B的左子树相等,树A的右子树和树B的右子树相等我们约定空树不是任意一个树的子结构解题思路:若树B是树A的子结构,则子结构的根节点可能为树A的任意一个节点。因此,判断树B是否是树A的子结构,需要完成两个工作1, 先序遍历A中的每个节点:判断是否与B的根节点相同;isSubStructure2,判断树A中与B树根节点相同的结点的子树是否包含树B;recur树 AA 的根节点记作
2020-09-09 17:45:43 329
原创 模块和包
模块模块就是python文件,使用模块好处:直接使用系统或者人为已经写好的功能,不用重复写代码导入以后可以使用模块中的定义好的变量,函数,类制作模块时注意:模块名字要遵循标识符命名规则(字母、数字、下划线,不能以数字开头),只有遵循规则的文件才能导入使用模块导入:有三种方法:1. 方法一:import 模块名 调用时:模块名.功能名() 如果后边定义与模块重名的变量 会覆盖模块2. 方法二:from 模块 import 功能(变量,函数, 类) 调用:功能()这种方法导入 如果后边导入
2020-08-21 17:58:48 152
原创 异常
异常组成异常类型:异常的错误描述信息捕获异常捕获所有异常try:可能发生异常的代码except:发生异常执行的代码捕获单个异常: try:可能发生异常的代码except 异常类型:发生异常执行的代码捕获多个异常: try: 对指定类型异常 做统一处理 不同处理为: try:可能发生异常的代码 可能发生异常的代码except (异常类型1,
2020-08-20 16:21:59 126
原创 面向对象三
多态多态:同一个方法调用,传入把不同对象,执行不同结果实行多态步骤:2.1. 子类继承父类(保证子类父类中都有同名方法)2.2. 子类重写父类中的方法(保证子类和父类中方法执行的不一样)2.3. 调用这个方法(子类和父类公有的方法)(调用公共方法)调用多态好处:扩展增加功能鸭子类型:python中多态其实是鸭子类型,可以没有继承,只需要保证对象中有这个方法就行私有属性:5.1.权限控制:给类中方法和属性添加一个访问控制权限,规定类中方法和属性在什么情况下可以访问,什么情况不可以5.2.
2020-08-20 15:57:59 117
原创 面向对象 二
继承:继承:描述的是类与类之间的关系优点:减少了代码的冗余特点:子类继承父类之后,子类对象可以使用父类中的属性和方法语法格式:class 类1(类2,类3,类4,…):pass类1:子类 派生类 括号中的类:父类 基类继承分为单继承,多继承, 多层继承6.1. 单继承:一个类只有一个父类6.2. 多继承:有多个(大于一个)父类6.2.1. 多继承时,如果多个父类中有同名的 属性和方法,则默认使用第一个父类的属性和方法(可以根__mro__查找继承顺序) 多个父类中
2020-08-20 15:25:27 75
原创 面向对象
面向对象1.软件开发可以分为:面向过程和面向对象2.面向过程:开发中小型项目3.面向对象:适用于大型开发场景4.面向对象的三大特征:封装性、继承性、多态性5.类和对象关系:类是由有共同特征和行为的一组对象抽象定义的对象是由类创建的,具体存在,特指某一个6.类的组成:1. 类名 2.属性(特征) 3.方法(行为)7.定义类:新式类格式:class 类名(object):经典类格式:class 类名:8.类名 的命名规则按照"大驼峰命名法"9.实例方法中:第一个参数一般是self,表示实
2020-08-16 22:26:25 88
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人