new^ 2022-08-08 10:13 采纳率: 50%
浏览 140
已结题

查找数组中符合条件目标的算法

查找数组算法
数组结构如下,树状数组
[
    {
        "AA": "111",
        "BB": "222",
        "CC": "333",
        "DD": "",
        "EE": "444",
        "CHILDREN": {
            "MM": "555",
            "TT": "666",
            "CHILDREN": {
                "MM": "555",
                "TT": "000",
                "NAME":"TOM"
                "CHILDREN": {
                    "MM": "555",
                    "TT": "555",
                    "NAME": "JACK"
                }
            }
        },
        "NAME": "INSI",
        "VALUE": "000000",
        "TYPE": "CN"
    },
    {
        "AA": "111",
        "BB": "222",
        "CC": "333",
        "DD": "",
        "EE": "444",
        "CHILDREN": {
            "MM": "555",
            "TT": "YYY",
            "CHILDREN": {
                "MM": "555",
                "TT": "666",
                "NAME": "000"
            }
        },
        "NAME": "INSI",
        "VALUE": "000000",
        "TYPE": "CN"
    },
    {
        "AA": "111",
        "BB": "222",
        "CC": "333",
        "DD": "",
        "EE": "444",
        "CHILDREN": {
            "MM": "555",
            "TT": "777",
            "NAME": "111",
            "CHILDREN": {
                    "MM": "555",
                      "TT": "777",
                      "NAME": "111",
                      "CHILDREN": {
                              "MM": "555",
                                "TT": "777",
                            "NAME": "JACK"
                        }
                  }
        },
        "NAME": "NNN",
        "VALUE": "000000",
        "TYPE": "CN"
    }
]

查找符合条件目标

在树状数组中查找符合条件目标,如果第一层级NAME值为JACK,返回这个对象,如果不等于JACK,继续查找所有节点CHILDREN,直到找到符合条件的对象,返回所有符合条件的对象,数组有很多CHILDREN.无法确定有多少节点,目前想到遍历递归,求个效率高的算法

  • 写回答

6条回答 默认 最新

  • 叫兽-郭老师 新星创作者: Java技术领域 2022-08-08 10:29
    关注
    获得1.50元问题酬金

    你这种只能去遍历了。递归吧

    评论

报告相同问题?

问题事件

  • 系统已结题 8月16日
  • 修改了问题 8月8日
  • 修改了问题 8月8日
  • 创建了问题 8月8日