我目前正在攻读一个为期一年的应用计算硕士课程,该课程旨在为没有计算机背景的人提供软件开发和工程方面的速成课程,并为我们在技术行业的职业生涯做准备课程中的一个类,高级编程技术,涵盖了许多C++中实现的排序算法,即Quicksort、Heapsort和Bubblesort。然而,一些大学生告诉我们,这些算法和工业无关,应用也不广泛。这是真的吗?如果是,我应该看什么排序算法?

最佳答案

Quicksort、Heapsort和Buublesort然而,一些大学生告诉我们,这些算法和工业无关,应用也不广泛。
这显然是错误的你会在野外看到流沙,甚至可能是堆石。
这是真的吗?如果是,我应该看什么排序算法?
学习这些算法,即使它们不一定在工业中使用,其目的是了解算法是如何组合在一起的,如何分析它们(什么是最坏的情况,什么是最好的情况,什么是渐近行为等),以及如何证明它们是正确的。
重点是培养如何推理、思考和理解算法的技能,而不一定要学习你将在行业中看到的算法。
所以我们用计算斐波那契数作为递归算法的一个例子来学习递归的概念,而不是学习如何计算斐波那契数。这在野外是很少需要的(除非你在做欧拉问题)(无论如何,通过递归实现斐波那契是很糟糕的。)

10-02 04:34