1 # 递归练习题 -- 深度查询 -- 不知道有多少层,使用递归
 2 # 1.打印所有的节点text
 3 # 2.输入一个节点名字,去遍历找,找到就打印,返回True 否则返回False
 4
 5 menu = [
 6     {'text': '北京', 'children': [
 7         {'text': '朝阳', 'children': []},
 8         {'text': '昌平', 'children': [
 9             {'text': '沙河', 'children': []},
10             {'text': '回龙观', 'children': []}
11         ]}
12     ]},
13     {'text': '上海', 'children': [
14         {'text': '宝山', 'children': []},
15         {'text': '金山', 'children': []}
16     ]}
17 ]
18
19 # 1.打印所有的节点text
20 def func(m):
21     for con in m:
22         print(con['text'])
23         func(con['children'])
24
25 func(menu)
26
27 # 2.输入一个节点名字,去遍历找,找到就打印,返回True 否则返回False
28 def func(menu, name):
29     for con in menu:
30         if name != con['text']:
31             if func(con['children'], name) == True:
32                 return True
33             else:
34                 func(con['children'], name)
35         else:
36             print(con['text'])
37             return True
38     else:
39         return False
40
41 name = input("输入节点名字:")
42 print(func(menu, name))

转载于:https://www.cnblogs.com/alice-bj/p/8449377.html

2.1 - 递归练习题相关推荐

  1. java 递归习题训练,Java蓝桥杯——递归练习题:走台阶(偶数版)

    递归练习题:走台阶(偶数版) 小明刚刚看完电影<第39级台阶>.离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级! 站在台阶前,他突然又想着一个问题: 如果我每一步只能迈上1个或2个 ...

  2. [转载] Python 递归 深入理解递归 Python递归剖析,绝对让你看懂!

    参考链接: Python | print()中的结束参数 目录 递归剖析 递归的两个过程 return 返回值 详解 递归思路二分法和递归尾递归递归练习题 递归剖析 递归真的很重要,之前学的时候,学的 ...

  3. 练习题|文件操作和函数

    1.文件操作练习题 1 -- 全局替换程序: 写一个脚本,允许用户按以下方式执行时,即可以对指定文件内容进行全局替换 'python your_script.py old_str new_str fi ...

  4. C语言入门——递归(思想简要讲解+简单递归练习)

    C语言入门--递归(简要讲解+递归练习) 递归定义: 程序调用自身的编程技巧称为递归( recursion). 递归从字面上我们可以理解为: 递去+归来 如下图 使用递归的目的: 简要:简化代码量,方 ...

  5. Python 递归 深入理解递归 Python递归剖析,绝对让你看懂!

    目录 递归剖析 递归的两个过程 return 返回值 详解 递归思路 二分法和递归 尾递归 递归练习题 递归剖析 递归真的很重要,之前学的时候,学的一知半解,以为真正了解,每次想到递归,就记得一句:返 ...

  6. 系统管理模块_部门管理_设计(映射)本模块中的所有实体并总结设计实体的技巧_懒加载异常问题_树状结构...

    系统管理模块_部门管理_设计本模块中的所有实体并总结设计实体的技巧 设计实体流程 1,有几个实体? 一般是一组增删改查对应一个实体. 2,实体之间有什么关系? 一般是页面引用了其他的实体时,就表示与这 ...

  7. leetcode 563 二叉树的坡度

    https://leetcode-cn.com/problems/binary-tree-tilt/ 题目 给定一个二叉树,计算整个树的坡度 . 一个树的节点的坡度定义即为,该节点左子树的节点之和和右 ...

  8. 安徽师范大学898专硕复习讲义

                                                                                                        ...

  9. 语法入门*算法入门题单

    作者:王清楚 链接:https://ac.nowcoder.com/discuss/817596?type=101&order=0&pos=1&page=4&chann ...

最新文章

  1. JDBC驱动程序的四种方式
  2. 学校测试-2015-2-27
  3. 自我总结和学习表单提交的几种方式 (一)
  4. 数据集准备及数据预处理_1.准备数据集
  5. 数据特征分析-统计分析
  6. mysql 连接池 100_mysql的最大连接数默认是100_MySQL
  7. USACO-Section1.6 Superprime Rib (枚举)
  8. git status怎么操作_Git 基本操作
  9. 百度360搜狗神马今日头条抖音获客方法解析|昔年优化推广
  10. VMware Ubuntu虚拟机卡顿慢 解决方法大全
  11. spring入门——注入demo
  12. 2、Modelsim使用教程
  13. querydsl动态 sql_QueryDSL-JPA
  14. MaxKey单点登录认证系统微服务架构v3.0.0GA发布
  15. 【四二学堂】H5手机游戏-梅花易数一撮金(游戏开发系列微课之一)
  16. html5怎么写副标题,毕业论文副标题怎么写
  17. ssm+bootsrap人力资源考勤系统-JAVA【数据库设计、源码、开题报告】
  18. 贵州建筑施工劳务资质备案流程
  19. Oracle - 锁
  20. 不可不知的JavaScript面向对象

热门文章

  1. html5 app 原理,html5打包成app应用的原理是什么?
  2. php试题多选,php考试题 (选择题).doc
  3. java许愿墙_wishingWall 一个好看的许愿墙板块,功能强大,页面美观 Java Develop 238万源代码下载- www.pudn.com...
  4. 阿里开源mysql日志_使用过mysql的binlog吗?看看如何用binlog排查阿里开源项目otter的问题...
  5. Python-Matplotlib可视化(8)——图形的输出与保存
  6. PyTorch数据加载器
  7. jsf服务_JSF dataTable示例
  8. python字符串转化列表_Python列表到字符串的转换
  9. spring框架_Spring框架
  10. sudoku me_Java Sudoku解算器程序