我正在阅读blog post关于使用Gnuplot和Cairo -terminal制作动画的方法,这个算法只是
我想要更多的东西,用户也可以在转换图像时实时浏览图像:
可以在并行编程的数据并行模型中很好地工作,即在阵列中有规律地构造的数据集。 操作(添加,删除)可以对此数据进行操作,但可以独立于不同的进程。
让我们假设在版本1中不需要有效搜索简单性。 但是,如果你有一个可以做到这一点的模型,我很乐意考虑它 - 让我们称之为第2版。
我认为列表在这里不是一个好的数据结构,因为删除所需的机会以及在数据结构末尾的连续简单添加。 由于删除,数据结构堆栈无法正常工作。 我认为某种 tree 数据结构可以工作,因为它有相当便宜的删除和便宜的搜索。 但是,数据并行模型中的简单数组就足够了。
我认为Java是一个很好的选择因为并行性。 但是,任何语言和伪代码都是好的。
我有一种直觉,即前端对此类系统的要求应该是qT作为终端仿真器。
对于廉价删除和最终连续添加的更好的数据结构是什么?
答案 0 :(得分:1)
Java LinkedList
似乎是你可以用于版本1的东西。你可以使用它的单个参数add()
以恒定时间附加到列表中。如果通过"实时"你的意思是当图像在用户的显示器中并因此以某种方式指向时,也可以在恒定的时间内删除它们。
最佳使用内存,而不是像Arraylist
一样重新实例化。
在对象上实现的任何双向链表(与数组相对)都可以。
你的第二个版本不够清楚。