程序员工作上是否要会自己写算法

想问一下像迪杰斯特拉算法此类已有的,在面试或者日常工作中会知道怎么用且知道算法的思想,但是不会自己用代码去实现出来可以吗,需要用的时候就复制代码这样

看你啥岗位了,实际上算法是提高我们对问题的分析与设计能力,这也是面试官为什么会问到

1.这么说吧,如果你不会,那就不要写,免得画蛇添足,到时候问起来你就蒙蔽了。
2.如果会一点算法,你就写平时喜欢研究算法,了解部分算法模型等等,然后指引面试官提问你会什么算法,说自己拿手的。
3.如果你是算法大牛,那就不要吝啬,直接写本人熟练使用和了解算法模型啥的。不要写精通,那是再找虐。

【以下回答由 GPT 生成】

问题回答:

在工作中应用算法技能是非常重要的,它可以帮助我们解决各种复杂的问题,提高工作效率和质量。下面是一些方法和建议,来帮助你在工作中应用算法技能:

  1. 理解算法的原理和思想:在面试和日常工作中都需要了解已存在的算法,并且了解它们的原理和思想。这可以帮助你更好地理解算法的适用场景和解决问题的方法。

  2. 使用已实现的算法库:在实际工作中,你通常不需要从零开始编写算法代码。许多编程语言都有强大的算法库和框架,可以直接使用。例如,Python中的numpy和scikit-learn库提供了非常丰富的机器学习和数据处理算法。应该熟悉使用这些库,并能够根据需要选择合适的算法进行工作。

  3. 理解算法的复杂性和效率:在面试和日常工作中,你可能会被问到算法的时间复杂度和空间复杂度。因此,你需要熟悉如何分析并评估算法的性能。掌握这些概念可以帮助你选择和优化算法,以获得更好的性能和效率。

  4. 能够实现一些常见的算法:尽管大多数情况下可以使用现有的算法库,但了解如何实现一些常见的算法仍然是很有价值的。例如,你可以尝试实现排序算法(如快速排序或归并排序)或图算法(如深度优先搜索或广度优先搜索)。可以用你最熟悉的语言实现,例如Python或Java。

  5. 在解决实际问题时,对于没有现成的解决方案的特定领域,你可能需要根据问题的要求来设计和实现算法。在这种情况下,你需要根据算法的思想来编写代码,并进行测试和调试。这可能需要一些时间和经验,但通过实践和学习,你将能够更好地解决问题。

总之,虽然在日常工作中可能不总是需要自己实现算法,但掌握算法的理论和应用非常重要。通过了解已存在的算法、使用现有的算法库和不断实践,你将逐渐提高自己的算法技能,并能够在工作中有效地应用它们。请记住,算法不仅仅是代码的实现,更是解决问题的思想和方法。



【相关推荐】



如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^