您可能想咬紧牙关,按照我之前的建议,在matlab中实现自己的队列类。
否则,一种可能是在当前代码中添加一级间接寻址。不要将对象存储在队列中,而是将它们作为值存储在
集装箱。地图
并将相应的密钥存储在队列中。理想情况下,密钥将是对象的哈希,但由于matlab没有内置的哈希函数,因此
集装箱。地图
甚至没有说如果它被实现为一个hashmap,您可以简单地使用不断增加的整数。所以算法是这样的:
keycount=0;
queueelements=containers.Map;
队列=。。
keycount=keycount+1;
队列元素(keycount)=s;
queue.enqueue(keycount);
key=queue.dequeue;
s=队列元素(键);
队列元素。删除(键);
编辑
然而,请注意
集装箱。地图
在matlab中是。。。不太好。