微信号:grzlwx

介绍:光荣之路官方资讯

面试基础(7)

2019-04-02 11:17 悟空老师

新书

速递

吴老的java版《selenium webdriver 实战宝典》和python版《selenium Webdriver 3.0 自动化测试框架实战指南》出版了,代码拿来就能用。

文 |  悟空老师

进来阅读的你就已经超过了80%的测试人!

Python版算法专题

7、二叉树的深度优先遍历

二叉树作为一种数据结构,其应用场景非常多,具体的有:用于数据的检索,数据管理,在游戏领域,可以用于场景的划分等

二叉树的遍历,分为深度优先遍历,以及广度优先遍历

在深度优先遍历中,具体分为如下三种:

先序遍历:先访问根节点,再遍历左子树,再遍历右子树;

中序遍历:先遍历左子树,再访问根节点,再遍历右子树;

后序遍历:先遍历左子树,再遍历右子树,再访问根节点

对于上图的二叉树,其先序遍历结果是:50,20,15,30,60,70;其中序遍历结果是:15,20,30,50,60,70;其后序遍历结果是:15,30,20,70,60,50

下面,进入我们的代码实现:

首先,定义二叉树中的节点:

定义二叉树类:

递归实现的先序遍历算法如下:

递归实现的中序遍历算法如下:

递归实现的后序遍历算法如下:

我们使用如下的二叉树,做算法的验证:

测试结果如下:

1. 冒泡排序

2. 插入排序

3. 选择排序

4. 快速排序

5. 队列

6. 堆栈

----------------------

在纸上快速写出来上述算法的你超过了90%的测试人!加油!

剩下10%的测试人会强迫自己把各种排序,队列,堆栈算法都自行写了出来。

●  未完待续

欢迎留言分享

测试人员的财富自由之路

来自测试人的困惑与思考

大龄 | 手工 | 自动化逆袭

【appium实战】appium混合页面点击方法tap的使用

实战:微信小程序+appium测试实例

实战:微信公众号+appium测试实例

使用LR编写windows sockets协议xml报文格式脚本

Python实战:file tell()返回的指针怎么就不一样?

互联网架构的演变

爬虫之我与正则的甜蜜约会

草根在测试行业如何杀出一条血路(8)

软件测试行业现状2018年度报告

2018web测试开发培训一年期周六班!

喜马拉雅app搜索并收听“光荣之路”电台
光荣之路
招聘|征稿|合作 |QQ群
735821166@qq.com
python群:457561756
性能群:415987441
招聘群:203715128
爱我,请给我好看
 
光荣之路 更多文章 疑难问题排查方法之“埋点法” 图解django框架下简单接口的实现 内推:SHEIN | 大数据测试工程师 学习敏捷DevOps推荐书 内推:某知名电商| 自动化测试经理
猜您喜欢 AI 淘金热 | 机器学习创业机会在哪里? 万圣节搞大事!这里的程序员都在拿高薪! RESTful API 编写指南 “活生生的5G”已来!华为发布5G端到端全系列产品解决方案 运维人的野蛮生长