很多编程极客普遍有一个疑问,为什么要准备DSA或者它太复杂等等?为了找出所有这些问题的答案,让我们看看我们的专家怎么说。首先,让我们向您介绍一下Shashi先生。
Shashi 在Adobe 工作了大约 2 年,对Java、Spring/Spring Boot、Hibernate、Jersey、REST API、 Python、Django、Javascript、React Js、MySQL、DynamoDB、Redis、Kafka 等技术有深入的了解。他于 2016 年毕业于 NIT Allahabad,并在Paytm担任了一年的软件工程师。他对竞争性编程充满热情。他目前在 GeeksforGeeks担任技术主管和导师。
问题 – 1:您好 Shashi,您建议我们的 Geek 在此锁定期间保持高效吗?
答:尽量遵循固定的例行程序。有效地管理您的一天。无论是编码还是您喜欢做的任何活动,您都应该提高自己的技能。另外,不要浪费太多时间在社交媒体上滚动。我知道这是一件很难的事。相反,尝试学习由于时间不足而无法学习的新技能。祝你好运。问题 2:如今,一年级和二年级学生的趋势是在没有掌握正确基础知识的情况下直接进行竞争性编程。对此你有什么想说的?
回答:这是非常正确的。老实说,如果您不精通基础知识,那么竞争性编程可能会非常令人沮丧。你解决问题的能力应该是一流的。我看到许多学生在练习竞争性编程时甚至不了解 DSA 的关键概念。这就像跳伞不知道如何打开降落伞。我建议学生掌握一种语言,然后开始学习竞争性编程。问题 3:您能否阐明 DSA 在获得一级公司工作方面的作用?
答:在顶级公司的校园实习中,将根据您解决问题的能力、DSA 知识和一些基本的计算机科学基础知识(如网络、操作系统、DBMS 等)对您进行评判。据统计,80-90% 的重点将是关于您的 DSA 技能。因此,请尝试提升您的 DSA 知识并解决尽可能多的问题。问题4:初学者应该如何开始准备DSA?推荐一些资源?
回答:嗯,这就像在谷歌上搜索谷歌是做什么的。如果您正在阅读这本杂志,您就会知道在学习 DSA 方面哪个网站是最好的。 GeeksforGeeks 按难度从基础到高级提供各种问题。通过对每个主题的深入解释,您将通过 C++、 Java或Python的完整代码找到正确的逻辑。如果您在理解 DSA 时遇到困难,我们最近还推出了结构性课程,旨在让您的计算机科学之旅顺利,同时为您的编码面试做好准备。您可以从 GeeksforGeeks 课程中查看它们。问题 5:一个人每天应该花多少时间编码才能成为专家?
回答:这个问题我被问过很多次了。这个问题不可能有固定的答案。这完全取决于您的经验、您的目标,更重要的是,您的承诺。每天练习至少 4-5 小时并保持一致。从您觉得合适的任何网站上解决尽可能多的问题。如果你正在寻找一个数字,我会说大约 600-800 小时。
感谢您的阅读!