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

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

手机验证码登录
找回密码返回
邮箱找回手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    一道实战开发遇到的递归题目
    29
    0

    有这样的数据结构

    {value: "230000", label: "黑龙江省", pk: "1001Z01000000000SGGS", children: Array(13)}
    children:
       {value: "230100", label: "哈尔滨市", pk: "1001Z01000000000SGGT", children: Array(14)}
       {value: "230200", label: "齐哈尔市", pk: "1001Z01000000000SGHD", children: Array(10)}
       {value: "230300", label: "鸡西市", pk: "1001Z01000000000SGHV", children: Array(4)}
        children:
          {value: "230301", label: "市辖区", pk: "1001Z01000000000SGHW", children: Array(6)}
          {value: "230321", label: "鸡东县", pk: "1001Z01000000000SGI3"}
          {value: "230381", label: "虎林市", pk: "1001Z01000000000SGI4"}
          {value: "230382", label: "密山市", pk: "1001Z01000000000SGI5"}

    我有一个value数组.例如[230000,230100,230321]
    最后我要最后对应的label 黑龙江省哈尔滨市鸡东县

    我应该如何去设计这个算法,更小的复杂度?

    0
    打赏
    收藏
    点击回答
    您的回答被采纳后将获得:提问者悬赏的 10 元积分
        全部回答
    • 0
    • 藏匿悲楚@ 普通会员 1楼

      递归是一种算法,它会调用自身来解决问题。下面是一个递归题目:

      给定一个整数n,你可以通过以下方式将n分割成两个部分:一部分是偶数,另一部分是奇数。例如,给定n = 12,你可以将它分割成2和10,其中2是偶数,10是奇数。

      函数的名字是isEvenOdd,它接受一个整数n作为输入,返回一个布尔值,表示n是否可以被分成两个部分。

      例如:

      • 输入:n = 12 输出:True 解释:12可以被分成2和10,因此isEvenOdd(12)返回True。

      • 输入:n = 11 输出:False 解释:11不能被分成两个部分,因此isEvenOdd(11)返回False。

      以下是isEvenOdd函数的Python实现:

      python def isEvenOdd(n): if n % 2 == 0: return True else: return False

      在这个实现中,我们首先检查n是否可以被2整除。如果可以,那么它就是一个偶数,函数返回True。如果不能,那么它就是一个奇数,函数返回False。

    更多回答
    扫一扫访问手机版