
算法和数据结构
J丶JOKE
C# UNITY
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
数据结构和算法绪论
数据结构 程序设计 = 数据结构+算法 数据结构就是数据元素之间存在一种或者多种特定关系的集合 数据结构分为 1.逻辑结构 逻辑结构:数据对象中数据元素之间的相互关系 四大逻辑结构: 1.集合结构:数据同属于一个集合,数据元素之间独立 2.线性结构:数据元素之间一对一关系 3.树形结构:数据元素之间存在一对多的层次关系 4.图形结构:数据元素之间是多对多的关系(神经网络原创 2017-10-11 15:28:41 · 329 阅读 · 0 评论 -
算法绪论
算法绪论 算法是解决特定问题求解步骤的描述,在计算机中表现为指令的有限序列,并且每一条指令表示一个或多个操作 算法的五个基本特征: 1.输入 算法具有零个或多个输入 2.输出 算法至少有一个或多个输出 3.有穷性 算法在执行有限的步骤之后,自动结束而不会出现无限循环,并且每一个步骤在可接受的时间内完成 4.确定性 算法的每一个步骤都具有确定的含义,不会出现二义性原创 2017-10-11 15:58:27 · 587 阅读 · 0 评论 -
算法效率的度量方法
时间复杂度: 事前分析估算方法:在计算机程序编写前,依据统计方法对算法进行估算。 程序运行是所消耗的时间却决于: 1.算法采用的策略和方案 2.编译产生的代码的质量 3.问题的输入规模 4.机器执行指令的速度 所以程序运行的速度快慢除了依靠硬件和软件之外,就是算法的质量和输入的规模 引入时间复杂度 1.第一种: int i, sum = 0, n原创 2017-10-11 16:28:49 · 1347 阅读 · 0 评论 -
算法时间复杂度和空间复杂度
时间复杂度 算法时间复杂度的定义: 在进行算法分析时,语句总的执行次数T(n)是关于问题规模n 的函数,进而分析他T(n)随n的变化情况并确定T(n)的数量级。算法的时间复杂度,也就是算法的时间量,记作:T(n) = O(f(n))。它表示随问题规模n的增大,算法执行时间的增长率和f(n)的增长率相同,称作算法的渐进时间复杂度,简称为时间复杂度。其中f(n)是问题规模n的某个函数 大O记原创 2017-10-11 20:23:46 · 481 阅读 · 0 评论 -
线性表
线性表的定义: 由零个(空表)或多个数据元素组成的有限序列。 特点: 1.线性表是一个序列,也就是说元素之间是有个先来后到的; 2.若元素存在多个,则第一个元素无前驱,而最后一个元素无后继,其他元素都有且只有一个前去和后继 3.线性表强调是有限的,无论计算机发展到多强大,它所处理的元素都是有限的。 用数学语言来进行定义的话: 线性表就是(a1,a2,a3,a4,......,an-1原创 2017-10-12 11:17:51 · 413 阅读 · 0 评论 -
线性表导引
线性表导引 线性表简介: ADT(抽象数据类型) 线性表(List) Data(数据元素之间逻辑关系的定义) 线性表中的数据对象集合为{a1,a2,........,an},每个元素的类型均为DataType。其中,除第一个元素a1外,每一个元素有且只有一个直接前驱元素,除了最后一个元素an外,每一个元素有且只有一个直接后继元素。数据元素之间的关系是一对一的关系。 Operat原创 2017-10-14 18:19:27 · 318 阅读 · 0 评论 -
线性表(线性存储结构)
线性表简介: ADT(抽象数据类型) 线性表(List) Data(数据元素之间逻辑关系的定义) 线性表中的数据对象集合为{a1,a2,........,an},每个元素的类型均为DataType。其中,除第一个元素a1外,每一个元素有且只有一个直接前驱元素,除了最后一个元素an外,每一个元素有且只有一个直接后继元素。数据元素之间的关系是一对一的关系。 Operation(操作)原创 2017-10-12 19:47:24 · 1385 阅读 · 0 评论