我目前正在测试根据键值对列表进行排序的最佳算法。
我有一个非常简单的对象(以下代码片段来自C#)
class BasicObject
{
int Key;
}
密钥是在构造对象时随机设置的。
所以我有一个BasicObject对象列表,最后需要按键值排序。
List<BasicObject> basicList = new List<BasicObject>();
for (int i = 0; i < someAmount; i++)
{
basicList.Add(new BasicObject());
}
我的想法是,创建一个名为orderedList的新列
我是python的新手,正在构建一个“只是为了好玩”的排序器。我很好奇,决定给它计时,并将其与list.sort()进行比较。对于一个包含10,000个数字的随机列表,我的程序需要50-70秒。list.sort()需要0.015秒。搜索只返回list.sort()的结果而不是排序的结果list.sort()怎么会这么高效呢?程序是这样的:
import time
import random
ct=0
while ct<5:
List=[]
count =0
while count< 10000:#builds a random list
在这种情况下,我从另一个select执行select,如果添加where子句,返回的行的顺序就会改变。
示例:
SELECT t.id
FROM (
SELECT t.id
FROM table1 t
ORDER BY
t.viewsTotal ASC
LIMIT 20
OFFSET 0
) base
INNER JOIN table1 t ON base.id = t.id
LEFT JOIN table2 t2 ON t2.id = t1.secondTableId
# WHERE t