它是将输入转换为输出的一系列计算步骤
解决具体问题所需要的解决方法
是对ID3算法做了改进:用信息增益率来选择属性,在树构造过程中进行剪枝
加密算法可以分为:可逆加密和不可逆加密,可逆加密分为对称加密和非对称加密
具体算法不是很了解
设计模式就是经过前人无数次的实践总结出的,设计过程中可以反复使用的、可以解决特定问题的设计方法
创建型模式:工厂方法,抽象工厂模式、单例模式、建造者模式、原型模式
结构型模式:适配器模式、装饰器模式
行为型模式:策略模式、观察者模式
定义:保证一个类只有一个实例,属于创建型模式
优点:在单例模式中,活动的单例只有一个实体,就能确保所有的对象都访问一个实例;因为系统内存中只存在一 个对象,因此可以节约系统资源
缺点:不适用于变化的对象;由于单例模式中没有抽象层,因此扩展有很大的困难
饿汉模式:类初始化时,会立即加载对象
懒汉模式:类初始化时,不会初始化该对象,只有需要使用的时候 才会创建该对象
应用场景:Windows的任务管理器是典型的单例应用,不能同时打开两个
定义:定义了一个创建对象的类,由这个类来封装实例化对象的行为,相当于是一个工厂中有各种产品,创建在一个类中,客户不需要知道具体的产品名称,只需要知道
产品 类所对应的参数
缺点:工厂的职责过重,而且当产品类型过多时不利于系统的扩展和维护
应用场景:工厂类负责创建的对象比较少,客户端只知道传入工厂类的参数,对于如何创建对象并不关心
定义:核心的工厂类不再负责所有产品的创建,而是将具体创建的工作交给子类去做,该核心类成为一个抽象
工厂的角色,仅负责给出具体工厂子类必须实现的接口
应用场景:客户端不知道它所需要的对象的类,抽象工厂类通过其子类来指定创建哪个对象
定义:简单地说是工厂的工厂,抽象工厂可以创建具体工厂,由及具体工厂来生产具体产品
应用场景:系统中有多于一个的产品族,而每次只使用其中某一产品族
定义:又叫发布-订阅模式。是一种行为型模式,他定义对象之间一种一对多的依赖关系,使得当一个对象改变状态,所有依赖于它的对象都会得到通知并自动更新
职责:主要用于一对多的通知,当一个对象的状态变化时,他需要及时告知一系列对象,令他们做出相应变化
分类:推模型和拉模型
推模型:对象向观察者推送信息,不管观察者是否需要,推送的信息通常都是对象的全部数据
拉模型:对象在通知观察者的时候,只传递少量信息。如果观察者需要更具体的信息,由观察者主动找对象 获取
应用场景:对一个对象状态的更新,需要其他对象同步更新,而且其他对象的数量动态可变,对象仅需要将自己的更新通知给其他对象而不需要知道其他对象的细节
