美文网首页iOS 基础知识
6.1 算法和数据结构入门

6.1 算法和数据结构入门

作者: wangwenquan1234 | 来源:发表于2017-11-16 13:16 被阅读73次

什么是算法

以下是高德纳在他的著作《计算机程序设计艺术》里对算法的特征归纳:

  • 输入:一个算法必须有零个或以上输入量。
  • 输出:一个算法应有一个或以上输出量,输出量是算法计算的结果。
  • 明确性:算法的描述必须无歧义,以保证算法的实际执行结果是精确地匹配要求或期望,通常要求实际运行结果是确定的。
  • 有限性:依据图灵的定义,一个算法是能够被任何图灵完备系统模拟的一串运算,而图灵机只有有限个状态、有限个输入符号和有限个转移函数(指令)。而一些定义更规定算法必须在有限个步骤内完成任务。
  • 可行性。能够实现,算法中描述的操作都是可以通过已经实现的基本运算执行有限次来实现。

算法大分类

前端最常用的算法是分治法:把一个问题分区成互相独立的多个部分分别求解的思路。这种求解思路带来的好处之一是便于进行并行计算。另外还有动态规划法贪婪算法线性规划法简并法


什么是数据结构

就是数据的结构 。。(哈哈,废话)

常用结构

数据结构的种类有:数组列表队列链表字典散列集合

浅析算法和数据结构的关系

一般来说是这样的:

  • 我们要解决一个跟数据相关的问题
  • 分析这个问题,想出对应的数据结构
  • 分析数据结构,想出算法

数据结构为算法提供服务。算法围绕数据结构操作。

所以说:程序=数据结构+算法


一张加深理解的图

数据结构和算法.png

参考文献

相关文章

  • 个人 Python 书单

    入门: Beginning Python 数据结构: Python 数据结构 算法: Python 算法教程

  • 6.1 算法和数据结构入门

    什么是算法 以下是高德纳在他的著作《计算机程序设计艺术》里对算法的特征归纳: 输入:一个算法必须有零个或以上输入量...

  • 如何学习数据结构与算法

    算法学习经验 推荐: 入门: 数据结构启蒙:《数据结构与算法分析——C 语言描述》 算法启蒙:《算法设计与分析基础...

  • algorithm-pattern

    参考自algorithm-pattern翻译为java代码 入门篇 算法快速入门 数据结构与算法 数据结构是一种数...

  • 算法从入门到入土(一)

    算法从入门到入土(一) 《我的第一本算法书》学习记录 数据结构 什么是数据结构 数据结构用于描述数据的顺序和位置关...

  • 算法和数据结构入门

    算法和数据结构入门 学好算法和数据结构对培养编程内力很重要 3Points: Chunk it up Delibe...

  • 20171016 周一 今日计划+回顾

    一、今日计划 学习任务:算法入门 - 阅读CL 8-9,2h 学习任务:算法设计 - 阅读KT 6.1-6.3,2...

  • 《算法图解》读书笔记—像小说一样有趣的算法入门书

    前言 学习算法课程的时候,老师推荐了两本算法和数据结构入门书,一本是《算法图解》、一本是《大话数据结构》,《算法图...

  • 数据结构与算法-目录

    数据结构与算法-目录 C语言篇 数据结构和算法-C语言篇1-绪论数据结构和算法-C语言篇2-初识算法数据结构与算法...

  • 【入门篇2】NOIP开篇(二)

    一、学习的顺序 对于零基础编程入门学员,需要解决三个问题:语法、算法、数据结构。其中算法是核心,语法是入门,数据结...

网友评论

    本文标题:6.1 算法和数据结构入门

    本文链接:https://www.haomeiwen.com/subject/rienmxtx.html