需要算法建议:排序电视节目剧集的最佳方法是什么?

时间:2011-09-17 15:51:31

标签: android algorithm sqlite sorting android-3.0-honeycomb

我有一个带有各种电视节目剧集的Sqlite数据库,我想按照他们的“新鲜度”(即他们的季节和剧集编号)对它们进行升序和降序排序。

例如:

  • 第1季第1集
  • 第1季第2集
  • [...]
  • 第2季第1集

......或者相反:

  • 第2季第2集
  • 第2季第1集
  • [...]
  • 第1季第2集

我将季节和剧集编号存储为数据库中每个条目的两个不同变量,因此可以基于此做一些事情。

您对如何以最佳方式完成工作有任何建议吗?

1 个答案:

答案 0 :(得分:3)

你只是要求sql语句吗? 在这种情况下,如果你提到2个单独的变量,让我们分别称它们为“季节”和剧集,你可以这样做:

升序选择*来自按季节显示的顺序asc,episode asc

降序:按季节desc,剧集desc从节目顺序中选择*

至少从性能的角度来看,“最优化”是将2个变量组合成第三个变量(如果需要,可以将2个变量保留为其他东西)。称之为'episodeOrder'。

'episodeOrder'必须先按季节排序,而不是在剧集中排序。 ASsuming季节永远不会有超过100集,你可以将它们组合如下:'episodeOrder'= xxyy其中'xx'是seasonnr而yy是episodenr,例如第2季第3集将成为:0203。

现在您可以按episodeError排序: 按episodeError asc;

从节目顺序中选择*

HTH 吉尔特-扬