class Solution public vectorvectorint levelOrderNode root vectorvectorint leve; if!root return leve; queueNode s; spushroot; while!sempty
这两种方法的基本思想是一样的,都是使用队列来进行层序遍历。
第一种方法中,使用一个while循环来遍历每一层的节点。在每一层内部,先记录当前层的节点个数,然后依次取出队列中的节点,并将其值加入到当前层的数组中。如果节点的子节点不为空,将子节点加入队列中。最后将当前层的数组加入到结果数组中。
第二种方法中,也是使用一个while循环来遍历每一层的节点。在每一层内部,先记录当前层的节点个数,然后依次取出队列中的节点,并将其值加入到当前层的数组中。如果节点的子节点不为空,将子节点加入队列中。最后将当前层的数组加入到结果数组中。
两种方法的区别在于变量的命名和使用方式上有所不同。第一种方法中使用了两个变量s和leve,其中s是队列,leve是结果数组。第二种方法中使用了两个变量que和result,其中que是队列,result是结果数组。另外,第一种方法中使用了自定义的Node类,而第二种方法中没有定义Node类,直接使用了题目中给出的Node类。
总体来说,两种方法的思路是一样的,只是变量的命名和使用方式稍有不同。
原文地址: https://www.cveoy.top/t/topic/ihAI 著作权归作者所有。请勿转载和采集!