在Python中对列表进行排序的快速方法,以使它们的相应索引处于相似的时间戳?

里德·柯蒂斯(Reed Curtis)

我有两个具有相同元素数量的列表,但时间戳是波动的,并且与其他列表的相同元素不匹配。有没有一种组织列表的方法,以使元素与另一个列表中的相同索引相对应?现在我有

sorted1 = []
sorted2 = []
for i in list1:
    for x in list2:
        if (i-1 <= x <= i+1):
            sorted1.append(i)
            sorted2.append(x)
            break

这可行,但是运行非常慢。

我的清单是需要配对的时代。

[1412121504, 1412121512, 1412121516, 1412121520, 1412121525, 1412121580]
[1412121470, 1412121515, 1412121525, 1412121560, 1412121580, 1412121600]

如果它们在另一列表中的对应时间都在1秒之内,那么我不想将它们包括在内。我希望它看起来像这样,

[1412121516, 1412121525]
[1412121515, 1412121525]

感谢您阅读所有这些内容。

Aplet123

您可以在对列表进行排序之后维护两个计数器,然后在比较元素时将它们一起移动:

list1 = [1412121504, 1412121512, 1412121516, 1412121520, 1412121525, 1412121580]
list2 = [1412121470, 1412121515, 1412121525, 1412121560, 1412121580, 1412121600]
# sort the lists
list1.sort()
list2.sort()
# maintain two counters to each of the lists
list1i = 0
list2i = 0
paired1 = []
paired2 = []
while list1i < len(list1) and list2i < len(list2):
    cur1 = list1[list1i]
    cur2 = list2[list2i]
    # too small, advance the first list counter
    if cur1 < cur2 - 1:
        list1i += 1
    # too large, advance the second list counter
    elif cur1 > cur2 + 1:
        list2i += 1
    # we found a pair, increment both to avoid duplicates
    else:
        paired1.append(cur1)
        paired2.append(cur2)
        list1i += 1
        list2i += 1

print(paired1, paired2)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用时间戳对数组进行排序并合并相似的日期

来自分类Dev

Python BeautifulSoup在相同容器中对相似的div进行排序

来自分类Dev

按时间戳对列表中的条目进行排序,这些时间戳包含在python中的条目名称中

来自分类Dev

如何在Java列表中对最早的时间戳进行排序?

来自分类Dev

排列列表中的元素,以使相似的元素相距最远

来自分类Dev

根据python中的时间戳对字典进行排序

来自分类Dev

在Python中按列表对索引列表进行排序的更简单方法

来自分类Dev

在查询中对嵌套的时间戳进行排序

来自分类Dev

使用Python在列表列表中查找相似的项目

来自分类Dev

如何使用快速排序按列表的列表中的索引排序

来自分类常见问题

Python(Django)如何通过时间戳属性对对象列表进行排序

来自分类Dev

Python(Django)如何通过时间戳属性对对象列表进行排序

来自分类Dev

从python中的特定索引值对列表进行排序

来自分类Dev

Python,从两个列表中删除相似的值

来自分类Dev

根据python中另一个子列表中的相应权重对子列表进行排序

来自分类Dev

将时间戳索引与python中的固定日期进行比较

来自分类Dev

有没有一种方法可以使用索引对列表列表进行排序?

来自分类Dev

在python的排序列表中索引元素的最快方法?

来自分类Dev

需要帮助在Swift中按时间戳对结构进行排序

来自分类Dev

在Eloquent中对时间戳进行排序

来自分类Dev

在mongodb中按降序对时间戳进行排序

来自分类Dev

在Cloudkit.JS中按时间戳对记录进行排序

来自分类Dev

Firebase 使用负时间戳对 desc 中的数据进行排序

来自分类Dev

在python中合并两个列表-但在合并过程中对它们进行排序

来自分类Dev

从嵌套列表中删除相似的元素

来自分类Dev

从列表中删除相似的句子

来自分类Dev

从列表中删除相似的数字

来自分类Dev

如果它们在另一个特定索引中相似,则添加列表的相同索引

来自分类Dev

合并Python中的时间戳列表

Related 相关文章

  1. 1

    使用时间戳对数组进行排序并合并相似的日期

  2. 2

    Python BeautifulSoup在相同容器中对相似的div进行排序

  3. 3

    按时间戳对列表中的条目进行排序,这些时间戳包含在python中的条目名称中

  4. 4

    如何在Java列表中对最早的时间戳进行排序?

  5. 5

    排列列表中的元素,以使相似的元素相距最远

  6. 6

    根据python中的时间戳对字典进行排序

  7. 7

    在Python中按列表对索引列表进行排序的更简单方法

  8. 8

    在查询中对嵌套的时间戳进行排序

  9. 9

    使用Python在列表列表中查找相似的项目

  10. 10

    如何使用快速排序按列表的列表中的索引排序

  11. 11

    Python(Django)如何通过时间戳属性对对象列表进行排序

  12. 12

    Python(Django)如何通过时间戳属性对对象列表进行排序

  13. 13

    从python中的特定索引值对列表进行排序

  14. 14

    Python,从两个列表中删除相似的值

  15. 15

    根据python中另一个子列表中的相应权重对子列表进行排序

  16. 16

    将时间戳索引与python中的固定日期进行比较

  17. 17

    有没有一种方法可以使用索引对列表列表进行排序?

  18. 18

    在python的排序列表中索引元素的最快方法?

  19. 19

    需要帮助在Swift中按时间戳对结构进行排序

  20. 20

    在Eloquent中对时间戳进行排序

  21. 21

    在mongodb中按降序对时间戳进行排序

  22. 22

    在Cloudkit.JS中按时间戳对记录进行排序

  23. 23

    Firebase 使用负时间戳对 desc 中的数据进行排序

  24. 24

    在python中合并两个列表-但在合并过程中对它们进行排序

  25. 25

    从嵌套列表中删除相似的元素

  26. 26

    从列表中删除相似的句子

  27. 27

    从列表中删除相似的数字

  28. 28

    如果它们在另一个特定索引中相似,则添加列表的相同索引

  29. 29

    合并Python中的时间戳列表

热门标签

归档