归纳一下今天看的有关数据结构和AI的知识:

数据结构:数据的组织形式和存储方法

主要包括:1.线性结构 2.树结构 3.图结构

1.线性结构:由n个元素构成的有限序列。【数组】为最简单的一种形式。

主要包括:顺序表、链表、栈、队列等形式 前两者从存储形式上区分,后两者从逻辑功能上区分。前两者是基础,后两者是基于前两者的。

2.树结构:出现的原因是一些数据之间存在“一对多”的关系。例如:AI领域的“博弈树”、数据挖掘和商业智能的“决策树”、多媒体技术中的“哈夫曼树”。

3.图结构:出现的原因是数据元素间存在“多对多”的关系。比1、2两种结构复杂的多。例如:AI领域中的神经网络系统贝叶斯网络


下面归纳:顺序表和链表的知识点

顺序表:用来存储数据,以连续的内存单元来存储,就构成了一张线性表。一张顺序表包括了一下特征:1.唯一的表名来标识顺序表。2.内存单元室连续的。3.数据是按顺序存放              的,元素间有先后关系。

链表:与顺序表不同,其内存单元是任意分配的,但是每个数据元素都存放在链表的一个结点中,每个结点由指针连接。

每个节点中包含:1.数据元素 2.下一个结点的地址。 链表逻辑上是连续的,但是物理上并不一定。只要获得链表的头节点就可以遍历整条链表。

表头不存放数据,只存放头结点的地址,即表头是一个指针变量。链表尾结点的指针域为NULL,表示终止。


AI:人工智能(Artificial Intelligence)

AI:AI是对程序系统的研究,该程序系统能够模仿人类的活动,如感知、思考、学习和反应。

AI简史:

2400年前希腊哲学家亚里士多德发明了逻辑推理这个概念,莱布尼茨和牛顿完成了逻辑语言的定稿,19世纪乔治·布尔提出布尔代数奠定计算机电子电路的基础。思维计算机主要思想来自阿兰·图灵提出的“图灵测试”。AI是有John McCarthy(约翰·麦卡思)于1956年首次提出。

“图灵测试”:测试者提出一个问题,由机器和人类分别提供一份答案,如果测试者不能说出哪份答案来自人类,哪份来自机器,那么计算机通过了图灵测试,则其具有智能行为。

智能体式一种系统。其可分为两大类:软件智能体和物理智能体。功能是:感知环境,从环境中学习并与环境进行交互。

软件智能体:完成特殊任务的程序。例如:对邮件的归类、搜索引擎。

物理智能体:(机器人)一个用来完成各项任务的可编程系统。主要运用于机器人上,设计这类系统更好地帮助人类的工作。

专门为AI设计的编程语言:LISP和PROLOG。LISP是麦卡思1958年发明的。(通用语言如C\C++\JAVA,也能用来编写智能软件)


数据结构的作用?

运用顺序表和链表进行对一些数据的操作?

涉及了数组、指针、结构体的知识。

AI涉及的知识比较多,哲学,逻辑学,心理学……


数据结构_1+AI_1的更多相关文章

  1. Scalaz(24)- 泛函数据结构: Tree-数据游览及维护

    上节我们讨论了Zipper-串形不可变集合(immutable sequential collection)游标,在串形集合中左右游走及元素维护操作.这篇我们谈谈Tree.在电子商务应用中对于xml, ...

  2. Scala_数据结构

    数据结构 容器(Collection) Scala提供了一套丰富的容器(collection)库,包括列表 (List).数组(Array).集合(Set).映射(Map)等 根据容器中元素的组织方式 ...

  3. 大数据技术之_16_Scala学习_07_数据结构(上)-集合

    第十章 数据结构(上)-集合10.1 数据结构特点10.1.1 Scala 集合基本介绍10.1.2 可变集合和不可变集合举例10.2 Scala 不可变集合继承层次一览图10.2.1 图10.2.2 ...

  4. Numpy基础数据结构 python

    Numpy基础数据结构 NumPy数组是一个多维数组对象,称为ndarray.其由两部分组成: 实际的数据 描述这些数据的元数据 1.一维数组 import numpy as np ar = np.a ...

  5. Scala 基础(2)—— 基本数据结构

    1. Scala 的面向对象 在学习 Java 的时候,我们说 Java 是一门面向对象的语言,然而 Java 其实并没有完全遵守“一切皆对象”这一准则. 例如:Java 的8种基本数据类型 & ...

  6. 大数据技术之_16_Scala学习_08_数据结构(下)-集合操作+模式匹配

    第十一章 数据结构(下)-集合操作11.1 集合元素的映射-map11.1.1 map 映射函数的操作11.1.2 高阶函数基本使用案例1+案例211.1.3 使用 map 映射函数来解决11.1.4 ...

  7. Scala数据结构

    Scala数据结构 主要的集合特质 Scala同时支持可变集合和不可变集合,优先采用不可变集合.集合主要分为三大类:序列(List),集(set),映射(map).所有的集合都扩展自Iterable特 ...

  8. 10. Scala数据结构(上)-集合操作

    10.1 数据结构特点 10.1.1 Scala集合基本介绍 uml => 统一建模语言 1) Scala同时支持不可变集合和可变集合,不可变集合可以安全的并发访问 两个主要的包 不可变集合:s ...

  9. 多线程爬坑之路-学习多线程需要来了解哪些东西?(concurrent并发包的数据结构和线程池,Locks锁,Atomic原子类)

    前言:刚学习了一段机器学习,最近需要重构一个java项目,又赶过来看java.大多是线程代码,没办法,那时候总觉得多线程是个很难的部分很少用到,所以一直没下决定去啃,那些年留下的坑,总是得自己跳进去填 ...

随机推荐

  1. 【转】FluentAPI详细用法

    设置主键modelBuilder.Entity<x>().HasKey(t => t.Name); 设置联合主键modelBuilder.Entity<x>().HasK ...

  2. Linux虚机安装配置Tomcat

    d第一步:下载Tomcat包,网址http://tomcat.apache.org/ 选择tar.gz包下载,并传到虚机中 第二步:解压下载好的Tomcat包 命令:tar -zxvf apache- ...

  3. SQL Server2008R2循环语句

    单循环语句 declare @i nvarchar(36) declare @LOCNUM nvarchar(36),@OBJECTTYPE nvarchar(36),@LOCDESC nvarcha ...

  4. unity中使用www的库读取数据里面的数据

    //使用www的库,读取数据里面的数据 string factoryControllerUrl = "http://IP地址:8086/DatabaseServerCode/GangShan ...

  5. Ehlib 学习

    似乎是为了垂直滚动条 SumList.Active := True; SumList.VirtualRecords := True; TDBGridEh 设计时 It is useful to use ...

  6. centos7搭建日志服务器

    服务器端 修改配置文件 /etc/rsyslog.conf中 $ModLoad imudp $UDPServerRun 514 打开日志服务监听 修改/etc/sysconfig/rsyslog文件 ...

  7. 【js高程学习笔记】Object类型

    创建一组Object的实例的方式有两种: 方法一: var person = new Object(); person.name = '团子'; person.race = '猫'; person.s ...

  8. IDEA解决SVN更新冲突

    在有冲突的文件上右键-> subversion ->resolve Text Confict->merge 将代码合并.

  9. windows环境下python编码问题

    log.info(unicode(str"你好" + "aaa")) 或 Log.info(u"你好111111111111111111111111& ...

  10. egret 简单的一笔画算法,在wing中可以直接跑(以后玩这类游戏就有个作弊器了)

    /** * 在Main中创建游戏场景 * Create a game scene */ private createGameScene() { MtwGame.Instance.init(this.s ...