SV数据类型-队列

  • Post author:
  • Post category:其他


1.队列结合了链表和数组的优点,可以在它的任何地方添加或删除元素,并且通过索引实现对任一元素的访问。

2.队列的声明是使用带有美元符号的下标:[$],队列元素的标号从0到$。

3.队列不需要new[ ]去创建空间,只需要使用队列的方法为其增减元素,一开始其空间为0。

4队列的一个简单使用:通过其自带方法push_back( )和pop_front( )的结合来实现FIFO的用法。(从back往里放,从front往外拿)


eg:int j = 1, q2[$] = {3,4},q[$] = {0,2,5};//队列复制不适用 " ` "
initial begin
    q.insert(1,j);//在2前插入j ->{0,1,2,5}
    q.insert(3,q2);//在5前插入队列q2 -> {0,1,2,3,4,5}
    q.delete(1);//删除第一个元素(不是第0个) -> {0,2,3,4,5}
    //下列操作运行速度更快(自带方法)
    q.push_front(6);//在队列头部插入6 -> {6,0,2,3,4,5}
    j = q.pop_bank();//去除队列尾部最后一个数 -> {6,0,2,3,4}
    q.push_back(8);//在队列尾部插入8 -> {6,0,2,3,4,8}
    j = q.pop_front();//去除队列头部第一个数 -> {0,2,3,4,8}
    foreach (q[i])
        $display(q[i]);//打印整个队列
    q.delete();//删除整个队列
    
end



版权声明:本文为weixin_42263208原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。