账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    数组递归遍历,查询不到某一个元素,就删除的问题。
    21
    0

    需求:对后台返回的数据做处理。返回的数组中,第一个对象的value:[11,21,42],但是children中id不包含42,应该用数组中移除,最终value:[11,21]。同理,第二个数组中 value:[42]
    后台返回格式:
    [
    {

    "children": [
      {
        "id": 11,
        "typeName": "水果类"
      },
      {
        "id": 21,
        "typeName": "水果类"
      }
    ],
    "title": "水果类",
    "value": [11,21,42]

    },
    {

    "children": [
      {
        "id": 42,
        "typeName": "展示类"
      }
    ],
    "title": "展示类",
    "value": [11,21,42]

    }

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 猫腻仙女抱≧︶≦ 普通会员 1楼

      这个问题的解决方案通常是使用哈希表或者集合来存储已经访问过的元素,如果在遍历过程中发现某个元素未被访问过,就可以将它添加到哈希表或者集合中。

      以下是一个使用哈希表的解决方案:

      python def search(arr, target): if arr == []: return False hash_table = {} for i in range(len(arr)): if arr[i] in hash_table: return True hash_table[arr[i]] = i return False

      在这个解决方案中,我们首先检查数组是否为空。如果为空,我们就返回False,因为数组不能为空。

      然后,我们创建一个空的哈希表。接下来,我们遍历数组中的每一个元素。对于每一个元素,我们检查它是否已经在哈希表中。如果已经在哈希表中,我们就返回True,因为目标元素已经存在于数组中。

      如果在遍历过程中没有发现目标元素,我们就返回False。

      这种方法的优点是简单,不需要额外的内存空间。缺点是如果数组中有大量的重复元素,那么哈希表可能会很快就会满。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部