如何才能轻松擅长数据结构和算法?

原文:https://www . geeksforgeeks . org/如何轻松成为数据结构和算法专家/

由 Freepik 设计

让我们首先澄清这个问题。没有任何简单的方法可以让你变得擅长任何事情,但是有一种高效的方法可以让你做任何事情。

让我们借助一个编程问题来试着理解简单和高效的区别吧!考虑“ 在排序数组 中搜索元素”的问题。

所以,这里的人甲以一种简单的方式解决了问题,而人乙以一种高效的方式解决了问题。

现在,学习数据结构和算法的有效方法取决于几个因素:

  1. 你以前的编程语言和基本的 DS 和 Algos 知识。
  2. 你想学习它的目的。
  3. 你可以利用的资源。
  4. 完美的向导!

现在让我们更深入地看看上面强调的每一点:

  • DS 和 Algo 的先验知识:如果你已经精通基本数据结构,如数组链表等。以及一些基本算法如排序搜索等。那么你将会比一个完全的新手花费更少的时间,因为你已经知道了基本知识。例如,如果你甚至不理解文章开头提到的编程示例,那么你还有很长的路要走。
  • 学习 DS 和 Algo 的目的:这也取决于你想要提高数据结构知识的目的。有些人学习它们是为了求职面试,有些是为了竞争性编程,有些是为了获取知识。如果你正在准备工作面试,那么你有一套有限的数据结构来学习哪些是面试中最常问的,如果你想成为一名优秀的有竞争力的程序员,那么你必须专注于复杂的数据结构,如段树分维树二进制索引树等。
  • 可用资源:资源在学习任何东西的过程中扮演着最重要的角色。你需要一套好的教程,这些教程的描述性足以让你从基础到高级都清楚。你还必须有一套流行的问题来练习你所获得的知识。
  • A Guide :姑且说上面三点你都想通了。你知道你想学习的东西,你知道你想学习的目的,你也有所有的资源和教程来做到这一点。但是你仍然对很多事情感到困惑,比如“从哪里开始?”,“如何开始?”等等。所以,你需要有人指导你完成这个过程。也就是说,必须有人帮助你以一种有效的方式使用可用的资源。

上述问题的解决方案:在 GeeksforGeeks 上,我们已经有了大量基于数据结构和算法的教程和问题,这些教程和问题是由全球一些优秀的有竞争力的程序员编写的。我们还有许多关于数据结构和算法的过去的、正在运行的和即将到来的课程,可以在geeks forgeeks-课程 上找到。

如果你正在准备面试,我们建议你通过以下链接:

如果你是一个有抱负的竞争性程序员,访问以下链接是必须的: