我有一个用于更新UI的类型。这是它的伪代码。
{
Item[] AllItems;
long[] ItemsRemovedFromPreviousUpdateByIndex;
long[] ItemsAddedToPreviousUpdateByIndex;
}
这些更新非常频繁,并且包含大量数据。我们希望聚合这些实例,并且每200毫秒仅向UI提供一次更新。每200ms窗口可能有20或30个更新。
我的问题是是否有一种汇总索引的好方法。我想不出没有分配大量内存的方法。
答案 0 :(得分:0)
我会尝试将这些数据存储在一对import restaurantPassport from '../assets/images/restaurantpassport.png';
<img src={restaurantPassport} />;
,def runmodel():
## omitting code for brevity
result = pd.DataFrame({
'Title for a': a,
'Title for b': b,
'Title for c': c,
'Title for d': d,
'Title for e': e,
})
return result
或int
中,具体取决于您拥有多少索引。
首先考虑做这样的事情:
long
当且仅当未添加/删除相应索引处的项目时,布尔值才为true。
但是,除了执行此操作外,我将尝试将布尔数组表示为一个长整数(如果需要的话)为BigInteger。从此开始,tttfftfftf-> 1110010010-> 914。
您可以研究将0转换为1的方法,如果已经是1,则不要理会。您需要在init情况下保持聪明,因为您从全0(即0)开始,并且第一个索引可能很大,因此您需要从BigInteger
到{{1 }},只需boolean[] added = new boolean[allItems.length];
boolean[] removed = new boolean[allItems.length];
。如果需要翻转0
处的位,则10...0
来自上述初始情况,您可以从那里翻转单个位,并可能进行移位。
请记住,由于1 << n
与j > n
相同,因此每次重置时始终需要知道n
数组的长度,因此,如果长度为8,您应该将allItems
解释为00001001
。