队列中的remove方法
结论:
remove()方法的含义,是返回第一个元素,并在队列中删除返回的对象
并且,remove方法会在队列为空的时候抛异常
学习三元组创建二叉树用到了队列,但感觉逻辑不通,不明白元素进行比较后如何将老元素出队列的。
正常二叉树
进行三元组操作时如下
问题来了,在第二个元素入队列时,是B与它的双亲A比较。而在此之后在进入元素D时,并没有代码表示退出元素A,不就变成了D和A比较,但结果却不是这样是怎么回事呢?
原因就出在queue()方法上理解问题,我把它单纯的理解成了返回队列值或者是删除队首元素,这就导致咋样都解释不通。而实际上的解释方式就在文章开头,它其实同时具有三个功能,所以才造成理解上的问题。