有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java高效地确定应该删除列表中的元素

我正在Android上制作一个聊天室应用程序。在应用程序中,每隔5秒,它会向服务器发送一个请求,以获取已连接用户的列表,并将其作为Button发送到面板。如何有效地确定用户是否已断开连接(是否应从列表中删除)

try1:

Have 2 list, one stores current interval of online list, two stores next interval of online list. Then compare .... O(n^2) comparasions and 2n memory;

try2:

Have 1 list, each interval deletes all Button in the panel, and recreate them each interval.

它们看起来都是丑陋的解决方案。有什么建议吗


共 (1) 个答案

  1. # 1 楼答案

    如果两个列表被排序,我们可以在O(n)时间内比较它们。因此,我建议您首先(在O(nlogn)时间内)对列表进行排序,然后比较它们。希望服务器按顺序返回列表(可能是在用户登录时),您可以进行比较,而无需排序