自定义结构--一般树形结构

代码:

package a;


import java.util.*;
class MyTree
{
    private List<Node>  lst = new ArrayList<Node>();
    class Node
    {
        String data;
        String parent;
    }
    
    public void add(String parent, String child)
    {
        Node t = new Node();
        t.data = child;
        t.parent = parent;
        lst.add(t);
    }
    
    public String getParent(String x)
    {
        for(int i=0; i<lst.size(); i++){
            if(lst.get(i).data.equals(x)) return lst.get(i).parent;
        }
        return null;
    }
    
    public List<String> getChild(String x)
    {
        List<String> t = new ArrayList<String>();
        for(int i=0; i<lst.size(); i++){
            if(lst.get(i).parent.equals(x)) t.add(lst.get(i).data);
        }
        return t;
    }
}

public class MyTreeTest
{
    public static void main(String[] args)
    {
        MyTree a = new MyTree();
        a.add("世界", "亚洲");
        a.add("世界", "欧洲");
        a.add("世界", "美洲");
        a.add("亚洲","中国");
        a.add("亚洲","日本");
        a.add("亚洲","韩国");
        a.add("中国","北京");
        a.add("中国","河北");
        a.add("中国","江苏");
        
        System.out.println(a.getParent("河北"));
        System.out.println("----------");
        System.out.println(a.getChild("中国"));
        
    }

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值