为什么使用排序算法而不是数据库呢?

时间:2013-08-02 20:46:39

标签: database arrays algorithm sorting data-structures

我很好奇在编写需要排序的东西而不是简单地使用数据库对数据进行排序时编写自己的排序算法有什么好处?我唯一能想到的是,如果数据集足够小,那么用一些查询来设置数据库是不值得的,也就是将数据来回传递到程序所需的额外时间。数据库在高效排序方面做得非常好,所以除了我上面提到的,我没有任何线索。

2 个答案:

答案 0 :(得分:4)

在数据库之外使用排序算法的一个常见原因是在表示层中提供由系统最终用户控制的排序工具。在这样的情况下,回到数据库并获取您已经拥有的信息的成本太高,只是为了让它以不同的方式排序。

然而,自己实施排序是非常不寻常的:所有流行的和最不受欢迎的编程环境都提供内置的分类设施,并认识到它们的广泛使用。

答案 1 :(得分:0)

当你的关键字段很复杂并且你需要复杂的比较器来对它们进行排序时,你应该在数据库之外实现排序。