面试突击-数据结构与算法速成01.pdfVIP

  • 6
  • 0
  • 约1.96万字
  • 约 40页
  • 2017-07-11 发布于天津
  • 举报
面试突击-数据结构与算法速成 第1周 DATAGURU专业数据分析社区 面试算法突击 讲师何浩勋 法律声明 【声明】本视频和幻灯片为炼数成金网络课程的教 学资料,所有资料只能在课程内使用,不得在课 程以外范围散播,违者将可能被追究法律和经济 责任。 课程详情访问炼数成金培训网站 DATAGURU专业数据分析社区 面试算法突击 讲师何浩勋 开课初衷与课程目标  开课初衷:  很多朋友在学习算法的时候会忽略了算法实现的重要性。  经典的算法教材如MIT的 《算法导论》 ,在讲授算法时往往会隐去一些复杂的步骤。  例如最大流算法,在大多数教材中,伪代码中都有一步称为“找一条增广路径”,这种 做法的好处是在学习算法的时候能够抓住算法的核心思想和重点,但弊端也很明显,就 是过分的简化导致学完之后发现对照着伪代码却实现不了。这门课就是为了填补“懂算 法”和“实现算法”之间的那条沟。  目标:  掌握常用的算法和数据结构实现技巧  在程序开发中能考虑算法的效率和复杂度,成为“懂算法的程序员”或者是“懂程序的 算法设计人员”  从容应付面试中的算法问题,尤其是算法的实现问题,避免纸上谈兵 DATAGURU专业数据分析社区 面试算法突击 讲师何浩勋 课程参考书 DATAGURU专业数据分析社区 面试算法突击 讲师何浩勋 课程参考书 DATAGURU专业数据分析社区 面试算法突击 讲师何浩勋 从基本数据结构说起  数据结构是一种存储和组织数据的方式,旨在便于访问和修改  没有一种单一的数据结构对所有用途均有效,因此需要了解不同数据结构的优 势和局限  最基本的数据结构  线性表:随机存储线性表,队列,堆栈  组织形式:数组,向量,链表  所谓的组织形式,就是指线性表的储存形式,数组、向量都是可以随机存储的 组织形式,而链表则不能随机存储,需要用迭代器进行遍历搜寻。 DATAGURU专业数据分析社区 面试算法突击 讲师何浩勋 Part1 :基本知识回顾  线性表为基础的数据结构  定义:  线性表是一个线性结构 ,它是一个含有不少于1个结点的有限序列,对于其中的 结点 ,有且仅有一个开始结点没有前驱但有一个后继结点 ,有且仅有一个终端 结点没有后继但有一个前驱结点 ,其它的结点都有且仅有一个前驱和一个后继 结点。  理解:  一个线性表可以直接理解为一个数组或者一个带序标的序列  线性表的概念对应的是树、堆之类非线性结构的数据结构 DATAGURU专业数据分析社区 面试算法突击 讲师何浩勋 基本知识回顾——栈  栈(STACK)  定义 :栈是限定仅在表头进行插入和删除操作的线性表。  特性:先进后出 ,后进先出 基本操作 时间复杂度 进栈操作(PUSH) O(1) 出栈操作(POP) O(1)

文档评论(0)

1亿VIP精品文档

相关文档