首页 首页 资源教程 编程开发 C/C++ 查看内容

从真题到思维全面提升算法思维 – 难度中级,资源教程下载

木马童年 2020-4-25 11:28 145 0

玩转算法面试 从真题到思维全面提升算法思维相信这是一门非常及时的课程,送给面试在即的你,学完这门课程,对于面试中遇到的大多数算法问题,你都会迎刃而解,但课程绝不止于面试,同样适合即将参加各类算法竞赛的 ...

2020-04-25_112610.png

玩转算法面试 从真题到思维全面提升算法思维

相信这是一门非常及时的课程,送给面试在即的你,学完这门课程,对于面试中遇到的大多数算法问题,你都会迎刃而解,但课程绝不止于面试,同样适合即将参加各类算法竞赛的同学,重要的是提升你的算法思维,这将是贯穿你编程生涯的核心内功!

用主流开发语言跟随算法大牛来一场思维的碰撞

以C++为主讲语言,并为你同步配套Java代码

从真题到思维的完美讲解

互联网公司

面试真题

课程所选算法面试问题大多来自leetcode或者hackerrank,都是大企业面试真题。所选真题均会标注具体企业,学完课程你会感受到:大企业的算法面试问题原来不过如此

算法面试

核心思维

课程并非只是生硬地讲解每一个算法问题的答案,而会特别强调针对不同的问题该如何思考,有哪些不同的解法,优缺点,有哪些地方可以和面试官交互探讨,让面试官对你印象深刻

算法思想

分门别类介绍

整个课程对常见的算法思维,如递归、分治、贪心、动态规划、搜索等等进行了专题讲解。不只是为了面试,在日后的技术工作你也一定会用到

抽象的算法

通俗的讲解

会算法,懂算法的人很多,但能把抽象的算法用你听得懂的语言讲明白的老师却很少,刘宇波正是能给你把算法讲明白的老师,听波波老师讲课你一定不会如坠云雾

囊括了算法面试的各方面问题

不拘泥纯理论知识讲解,课程每章节配套大量练习题,强化训练,巧过面试关

复杂度分析

了解常见时间复杂度

建立复杂度和数据规模之间的概念

通过实验的方式,亲自验证自己代码的时间复杂度

理解均摊复杂度分析

数组

通过基础问题,掌握写出正确算法的“秘诀”

巧妙使用双索引技术,解决复杂问题

对撞指针- 滑动窗口

查找表问题

树和哈希表两种不同底层实现的查找表

使用map,set,unordered_map、

unordered_set解决算法问题

链表

在链表问题中灵活使用指针

使用虚拟头结点简化链表问题

在链表中使用双指针解决复杂问题

栈的基础应用

巧妙使用栈写出非递归算法

深入理解系统栈,模拟系统的递归调用

二叉树

通过二叉树天然的递归结构理解递归算法

递归算法的两要素

二分搜索树中的算法问题

队列

在树结构和图结构中使用广度优先遍历

巧妙对问题进行建模

使用优先队列解决问题

回溯

掌握回溯算法的基本写法

排列问题- 组合问题

使用回溯算法解决简单的人工智能问题

动态规划

深入理解什么是动态规划

记忆化搜索

重叠子问题和问题的无后效性

01背包问题详解- LIS,LCS等问题分析

贪心算法

避过贪心算法的陷阱

课程目录

第1章 算法面试到底是什么鬼?

一提起算法面试,很多同学就会心有余悸。可其实,大多数企业的算法面试,并没有那么可怕。并不是一定要啃完整本《算法导论》,才能玩儿转算法面试;也并不是只有ACM参赛选手,才能笑傲算法面试。恰恰相反,大多数算法面试关注的算法思维,其实很基础。在这一章,和大家聊一聊,算法面试,到底是什么鬼?…

第2章 面试中的复杂度分析

很多同学一提起复杂度分析就头疼,马上想起了《算法导论》中复杂的数学推导。但其实在一般的企业面试中,对复杂度的分析要求并没有那么高,但也是绕不过去的坎儿。在这一章,和大家介绍一下,面试中需要掌握的复杂度分析。…

第3章 数组中的问题其实最常见

面试中的算法问题,有很多并不需要复杂的数据结构支撑。就是用数组,就能考察出很多东西了。其实,经典的排序问题,二分搜索等等问题,就是在数组这种最基础的结构中处理问题的。在这一章中,我们学习常见的数组中处理问题的方法。…

第4章 查找表相关问题

查找,是使用计算机处理问题时的一个最基本的任务,因此也是面试中非常常见的一类问题。很多算法问题的本质,就是要能够高效查找。学会使用系统库中的map和set,就已经成功了一半。

第5章 在链表中穿针引线

链表是一种特殊的线性结构,由于不能像数组一样进行随机的访问,所以和链表相关的问题有他自身的特点。我将之称为穿针引线。我们在这一章,就来看一看,如何在链表中穿针引线。

第6章 栈,队列,优先队列

栈和队列虽然是简单的数据结构,但是使用这些简单的数据结构所解决的算法问题不一定简单。在这一章里,我们将来探索,和栈与队列相关的算法问题。

第7章 二叉树和递归

递归,是使用计算机解决问题的一种重要的思考方式。而二叉树由于其天然的递归结构,使得基于二叉树的算法,均拥有着递归性质。使用二叉树,是研究学习递归算法的最佳入门方式。在这一章里,我们就来看一看二叉树中的递归算法。…

第8章 递归和回溯法

回溯法是解决很多算法问题的常见思想,甚至可以说是传统人工智能的基础方法。其本质依然是使用递归的方法在树形空间中寻找解。在这一章,我们来具体看一下将递归这种技术使用在非二叉树的结构中,从而认识回溯这一基础算法思想。…

第9章 动态规划基础

很多同学听到“动态规划”的名称可能会望而生畏,觉得动态规划的问题都很复杂。但其实,动态规划本质依然是递归算法,只不过是满足特定条件的递归算法。在这一章里,我们就来逐步解开动态规划的神秘面纱

第10章 贪心算法

通常同学们可能会认为贪心算法比较简单。确实,通常贪心算法的实现非常容易,但是,一个问题是否能够使用贪心算法,是一定要小心的。我们在这一章来看一看,贪心算法可能会有哪些坑。

第11章 课程结语

看完整个课程,我不能保证所有的同学都能百分百地对每一个算法面试问题应答自如,但认真学习的同学对大部分问题都应该已经有了一个合理的思维路径。在最后一章,我们再来简单地总结一下,并祝每一位同学都能找到自己喜欢的工作,大展宏图:)…

互联网 数据规模 人工智能 数据结构 数据算法
0
为您推荐
C#开发轻松入门,资源教程下载

C#开发轻松入门,资源教程下载

课程名称C#开发轻松入门,资源教程下载课程目录1-6 第一个C#程序---HelloWorld.mp41-5…...

曾怡C语言程序设计学习视频,资源教程下载

曾怡C语言程序设计学习视频,资源教程下载

课程名称曾怡C语言程序设计教程,共30课时,附带C语言经典100例 ,资源教程下载…...

C++编程算法学习视频,资源教程下载

C++编程算法学习视频,资源教程下载

课程名称C++编程算法学习视频,资源教程下载课程目录C++算法的使用顺序表结构链表结构…...

零基础学C++算法学习视频,资源教程下载

零基础学C++算法学习视频,资源教程下载

课程名称零基础学C++算法学习视频,资源教程下载课程目录1.编程的灵魂:数据结构+算法…...

C++编程个人学习笔记,学习资源下载

C++编程个人学习笔记,学习资源下载

课程名称C++编程个人学习笔记,学习资源下载…...

东南大学何洁月C++学习视频,资源教程下载

东南大学何洁月C++学习视频,资源教程下载

课程名称东南大学何洁月C++学习视频,资源教程下载课程介绍C++这个词在中国大陆的程序…...