有这样的数据结构
{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 黑龙江省哈尔滨市鸡东县
我应该如何去设计这个算法,更小的复杂度?
递归是一种算法,它会调用自身来解决问题。下面是一个递归题目:
给定一个整数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。