```python
class Solution:
def Print(self, pRoot):
# write code here
if pRoot is None:
return []
data = []
stack1 = []
stack2 = []
stack1.append(pRoot)
while stack1 or stack2:
# data1一定是局部的,不能是全局的
data1 = []
while stack1:
cur = stack1.pop()
data1.append(cur.val)
if cur.left:
stack2.append(cur.left)
if cur.right:
stack2.append(cur.right)
if len(data1)>0:
data.append(data1)
data2 = []
while stack2:
cur = stack2.pop()
data2.append(cur.val)
if cur.right:
stack1.append(cur.right)
if cur.left:
stack1.append(cur.left)
if len(data2)>0:
data.append(data2)
return data