|
所在平台: Udemy |
课程主页: https://www.udemy.com/course/data-structures-and-algorithms-in-python-gb/
课程评论:没有评论
课程名称:Python中的数据结构与算法 课程概述:构建可靠且高性能的软件需要超越特定编程语言或框架的知识。这要求对数据在内存中的组织方式、如何操作、排序或搜索等有深入的理解。大科技公司如谷歌、亚马逊或Netflix在技术面试中集中关注这些主题的原因就在于此。无论你从事移动应用、网站、游戏、机器学习或任何涉及编码的工作,都需要对数据结构与算法有良好的掌握。许多自学者和有抱负的工程师常常感到在选择合适的数据结构或解决问题的方法时缺乏知识。如果你曾经有过这样的感觉,这门课程正是为你准备的。该课程汇集了数月的计算机科学内容,帮助你达到与计算机科学学位持有者相同的水平。 本课程的特色在于:每个视频都以深入分析当前主题开始。在这一阶段,我们不会立即编写代码,而是学习如何处理问题,思考解决方案,并建立解决方案的思维模型。接着,我们将逐步编写算法代码,但这并未结束。我们将使用一个或多个示例逐行分析代码,实实在在地观察代码是如何从上到下运行,数据在执行过程中的变化与流动。我们发现这种方法是理解算法内部运行机制的最佳方式。课程中还将利用大O符号分析每个算法和方法的时间性能和空间利用情况,讨论每种数据结构的优缺点及其在现实世界中的应用。此外,你还将学习递归、计算机内部工作原理、问题解决技巧、常见编程模式等内容。 课程内容: - 计算机内部工作原理 - 数据结构的定义 - 算法的定义 - 问题解决技巧 - 大O符号:分析算法的时间性能和空间利用 - 深入理解代码的工作原理 - 递归 - 数据结构: - 数组 - 哈希表 - 单链表 - 双链表 - 栈 - 队列 - 二叉搜索树 - 树的遍历 - 堆 - 图 - 排序算法: - 插入排序 - 选择排序 - 冒泡排序 - 希尔排序 - 堆排序 - 归并排序 - 快速排序 - 基数排序 感谢您的考虑,期待这门课程能够助您学习之路愉快!
Building reliable and highly performant software requires knowledge that goes beyond a certain programming language or framework. It requires a solid understanding of how data is organized in memory, how it can be manipulated, sorted or searched into. There's a reason why all the big tech companies such as Google, Amazon or Netflix focus their technical interviews on those topics. Whether you do mobile apps, websites, games, machine learning or any other work that involves coding, you need a good grasp of Data Structures and Algorithms. Many self taught developers and aspiring engineers often feel they lack the knowledge when having to decide on the right data structure or the right approach for solving a problem. If you ever felt that way, this material is the right choice for you. This course packs months of Computer Science subject matter to get you on the same level of proficiency as someone with a Computer Science degree.What sets us apart ? Every video begins with an in depth analysis of the topic at hand. At this stage we won't write any code yet, but rather learn how to approach the problem, think of ways we could solve it and build a mental model of the solution. We then go on to code the algorithm step by step. But we don't stop there. We take one or more examples and walk through the code line by line. And we mean that literally. You will see how the code runs from top to bottom and how data flows and changes during execution. We find this method the absolute best way to really understand the inner workings of an algorithm. We'll also analyze the time performance and space utilization of every algorithm and method we write using the Big O Notation. We'll talk about the strengths and weaknesses of each data structure and discuss their real world usage. Apart from all of that, you'll also learn things like recursion, how computers work under the hood, problem solving techniques, common programming patterns and much more.What does this course cover ?How computers work under the hoodWhat a data structure isWhat an algorithm isProblem solving techniquesBig O Notation - how to analyze the time performance and space utilization of algorithms. This is done for every single function/algorithm we write.Gain a deeper understanding of how code worksRecursionData Structures:ArraysHash TablesSingly Linked ListsDoubly Linked ListsStacksQueuesBinary Search TreesTree TraversalHeapsGraphsSorting Algorithms:Insertion SortSelection SortBubble SortShell SortHeap SortMerge SortQuick SortRadix SortThanks for considering, and I hope this course will help you in your journey. Happy learning!