怎么根据当前节点查找它的所有父节点

数据结构如下:

public class MyNode {
    private String name;
    private List<MyNode> nodeList;
}

List<MyNode> root = new ArrayList<>();
MyNode a = new MyNode("a");
List<MyNode> aList  = new ArrayList<>();
aList.add(new MyNode("a1"));
aList.add(new MyNode("a2"));
a.setNodeList(aList);

MyNode b = new MyNode("b");
List<MyNode> bList  = new ArrayList<>();
bList.add(new MyNode("b1"));
bList.add(new MyNode("b2"));
b.setNodeList(bList);

root.add(a);
root.add(b);`

比如我输入字符串b1然后给我返回一个集合包含b1节点和b节点的List集合,我的真实数据有二十多个层级,用Java应该怎么
实现?

递归

你这个是树形的数据结构,获取节点的父节点。只有从root根节点来遍历树。这样的效率实在不高啊……