``` function readDirFiles($dir){ $files= []; $queue=[realpath($dir)]; $currentPath = current($queue); while($currentPath) { $path = $currentPath; if (... ...
分类:
Web程序 时间:
2019-01-01 21:44:41
阅读次数:
235
# 1、回顾文件递归遍历. 默写一遍. import os def func(lujing,n): lst=os.listdir(lujing)#打开文件夹,列出所有名字 b c for el in lst: #循环当前文件夹名字 b c path=os.path.join(lujing,el)#拼... ...
分类:
编程语言 时间:
2018-12-27 03:18:53
阅读次数:
173
node 节点定义 递归前序遍历: 非递归前序遍历:先遍历当前节点,再遍历他的左子树,再到右子树。每个节点都保存着左右子树的信息。 因为当前节点被弹出,所以必须要先保存他的右子树。如果不将右子树不压栈的话,将会丢失信息。 中序递归遍历: 中序非递归遍历: 一直将他的左子树压栈。 一直到左子树最左的节 ...
分类:
其他好文 时间:
2018-12-23 11:15:44
阅读次数:
132
1. 问题背景 在 C++11 的标准中,我们可以通过 (以常量整数值为索引号)操作 tuple 中的参数,而到了 C++14 之后的标准,新增了 (以数据类型为索引)的方式操作 tuple 中的参数。那么,若只是在 C++11 标准中,是否有办法使用 以数据类型为索引 的方 ...
分类:
编程语言 时间:
2018-12-22 11:59:04
阅读次数:
225
1. 创建二叉树 因为在含有n个结点的二叉链表中一定有n+1个空指针域,所以在输入数据时一定要给出n+1个空指针值。 2,递归遍历算法 3,非递归遍历算法 ...
分类:
其他好文 时间:
2018-12-10 14:12:33
阅读次数:
163
前序非递归遍历 中序非递归遍历 后序非递归遍历 要保证根结点在左孩子和右孩子访问之后才能访问,因此对于任一结点P,先将其入栈。如果P不存在左孩子和右孩子,则可以直接访问它;或者P存 在左孩子或者右孩子,但是其左孩子和右孩子都已被访问过了,则同样可以直接访问该结点。若非上述两种情况,则将P的右孩子和左 ...
分类:
其他好文 时间:
2018-12-06 20:49:31
阅读次数:
149
[前文] 二叉树的非递归遍历有 先序遍历、中序遍历 、后续遍历 和 层序遍历。 非递归算法实现的基本思路:使用堆栈。而层序遍历的实现:使用队列。 如下图所示的二叉树: 前序遍历顺序为:ABCDE (先访问根节点,然后先序遍历其左子树,最后先序遍历其右子树) 中序遍历顺序为:CBDAE (先中序遍历其 ...
分类:
其他好文 时间:
2018-11-17 19:27:49
阅读次数:
206
[前文] 二叉树的递归遍历包括 先序遍历、中序遍历 和 后续遍历。 如下图所示的二叉树: 前序遍历顺序为:ABCDE (先访问根节点,然后先序遍历其左子树,最后先序遍历其右子树) 中序遍历顺序为:CBDAE (先中序遍历其左子树,然后访问很节点,最后中序遍历其右子树) 后续遍历顺序为:CDBEA ( ...
分类:
其他好文 时间:
2018-11-17 16:05:16
阅读次数:
157
采用 数据劫持 + 发布-订阅 模式,通过Object.definePropety()来劫持各个属性的setter,getter,在数据变动时发布消息给订阅者,触发相应的监听回调 需要对observer的数据对象进行递归遍历,包括子属性对象的属性,都加上setter和getter ,这样,给这个对象 ...
分类:
其他好文 时间:
2018-11-12 11:22:53
阅读次数:
175
栈 栈是一种内存结构,先进后出,后进先出。python中没有栈的概念,我们目前只能仿写。 队列 队列也是一种内存结构,先进先出,后进后出。 创建队列 递归遍历目录和文件 栈 深度遍历 队列 广度遍历 复制目录和文件 文件复制实例 ...
分类:
其他好文 时间:
2018-11-10 00:56:16
阅读次数:
233