数据结构和算法:使用 Java 深入探讨
了解数组、链表、树、哈希表、堆栈、队列、堆、排序算法和搜索算法
教程演示🔗
What you’ll learn 学习内容
-
Learn the strengths and weaknesses of a variety of data structures, so you can choose the best data structure for your data and applications
了解各种数据结构的优缺点,以便为您的数据和应用程序选择最佳数据结构 -
Code an implementation of each data structure, so you understand how they work under the covers
对每个数据结构的实现进行编码,以便了解它们在幕后的工作原理 -
Learn many of the algorithms commonly used to sort data, so your applications will perform efficiently when sorting large datasets
了解许多通常用于对数据进行排序的算法,以便您的应用程序在对大型数据集进行排序时能够高效执行 -
Learn what’s available in the JDK for storing and sorting data, so you won’t waste time reinventing the wheel
了解 JDK 中可用于存储和排序数据的功能,这样您就不会浪费时间重新发明轮子
Requirements 要求
-
Previous experience with an object-oriented programming language, preferably Java (but any OO language is fine).
以前使用面向对象编程语言的经验,最好是 Java(但任何 OO 语言都可以)。
Description 描述
So you’ve worked with the basics of data structures and algorithms in Java (or another OO programming language) but feel like you need a deeper knowledge of how things work.
因此,您已经掌握了 Java(或其他面向对象编程语言)中数据结构和算法的基础知识,但觉得您需要更深入地了解事物的工作原理。
Maybe you have taken other courses on this topic that focus more on teaching how to pass job interview tests (theory) instead of how to make good choices for the programs you develop (implementation).
也许你已经上过关于这个主题的其他课程,这些课程更侧重于教授如何通过面试测试(理论),而不是如何为你开发的程序做出正确的选择(实施)。
Or maybe you are ready to move from a junior programming position to a more senior one and need to get skilled in advanced concepts like data structures, and how to apply them to your own projects.
或者,也许你已经准备好从初级编程职位转到更高级的职位,并且需要熟练掌握数据结构等高级概念,以及如何将它们应用到你自己的项目中。
Whatever the reason, if you are looking for a course that focus on the implementations to give you a complete understanding of how things work, then this is the course for you.
不管是什么原因,如果你正在寻找一门专注于实现的课程,让你全面了解事情是如何工作的,那么这就是你的课程。
This course goes over the theory of how things work, but only to give you what you need to know to understand the implementation covered.
本课程将介绍事物如何运作的理论,但只是为了为您提供理解所涵盖的实现所需的知识。
Complete source code is included and available for you to download.
包含完整的源代码,可供您下载。
This is a hands-on course! If you want to try understand things at a deep level, and work on implementations, rather than theory, then again, this is the course for you.
这是一门实践课程! 如果你想尝试在深层次上理解事物,并致力于实现,而不是理论,那么,这门课程就是为你准备的。
Topics covered:- 主题:-
Arrays 阵 列
Linked Lists 链表
Trees 树
Hashtables 哈希表
Stacks 栈
Queues 队列
Heaps 堆
Sort algorithms 排序算法
Search algorithms 搜索算法
The course also spends more time than most other courses of its kind looking at what’s available in the JDK. Students wanting to understand how things work “under the hood” will benefit enormously from this course.
与大多数其他同类课程相比,该课程还花费了更多的时间来查看 JDK 中可用的内容。想要了解“幕后”如何运作的学生将从本课程中受益匪浅。
Why learn about data structures and algorithms?
为什么要学习数据结构和算法?
The reality is, the more you learn about data structures and algorithms, the better a programmer you become.
现实情况是,你对数据结构和算法了解得越多,你就会成为一个更好的程序员。
Why? 为什么?
Because, data structures and algorithms are effectively patterns for solving problems. You want to add as many of them as you can to your skill-set. By doing so, you will find you solve more problems, and use the right tools for the job, in a more elegant way. And you will learn a heap of them in this course.
因为,数据结构和算法是解决问题的有效模式。 您希望将尽可能多的技能添加到您的技能组合中。 通过这样做,您会发现您可以解决更多问题,并以更优雅的方式使用正确的工具来完成工作。 您将在本课程中学到很多。
Why enrolling in this course is the best decision you can make.
为什么注册本课程是您可以做出的最佳决定。
Your instructor, Sarah Ettritch has over 25 years’ software development experience and has been working with Java since JDK 1.1. She has spent many years creating tools used by developers, which required a deep knowledge of data structures and algorithms, and is perfectly qualified to teach this course.
您的讲师 Sarah Ettritch 拥有超过 25 年的软件开发经验,自 JDK 1.1 以来一直从事 Java 工作。 她花了很多年时间创建开发人员使用的工具,这需要对数据结构和算法有深入的了解,并且完全有资格教授这门课程。
Most courses focus on giving you the theory of how things work, so that you can take an interview. Whilst the theory is important, the knowledge of how to implement these data structures and algorithms are of vital importance.
大多数课程的重点是为您提供事物如何运作的理论,以便您可以参加面试。虽然理论很重要,但如何实现这些数据结构和算法的知识至关重要。
This course goes over the theory of how things work, but only to give you what you need to know to understand the implementation covered. The main focus of the course is to give you a real understanding of how things work under the hood, so that you can apply this to future programming projects.
本课程将介绍事物如何运作的理论,但只是为了为您提供理解所涵盖的实现所需的知识。该课程的主要重点是让你真正了解事情在幕后是如何工作的,这样你就可以将其应用于未来的编程项目。
If you want to actually understand how things work, and be able to take that understanding and apply it to your own programs, then this course is for you.
如果你想真正了解事物是如何运作的,并能够将这种理解应用到你自己的程序中,那么本课程就是为你准备的。
After completing this course, you will have a solid understanding of data structures and algorithms (both the theory, and the implementation).
完成本课程后,您将对数据结构和算法(理论和实现)有扎实的了解。
The sooner you sign up for this course, the sooner you will have the skills and knowledge you need to increase your job or consulting opportunities. Java developers with key skills and understanding of data structures and algorithms are in high demand and get paid extremely well.
您越早报名参加本课程,您就会越早获得增加工作或咨询机会所需的技能和知识。具有关键技能和对数据结构和算法的理解的 Java 开发人员需求量很大,并且报酬非常高。
If you are ready for that new job promotion or consulting opportunity, it’s time to get started.
如果您准备好迎接新的工作晋升或咨询机会,那么是时候开始了。
Who this course is for:
本课程适用于谁:
- Developers who have some knowledge of Java (or another OO language) looking to understand data structures and algorithms at a deep level
对 Java(或其他面向对象语言)有一定了解的开发人员,希望深入了解数据结构和算法