树的遍历与递归
最近做一个统计工作,需要遍历一些文件,一个文件夹下面有很多层的小文件,如何算出这个文件夹下面有多少文件?相信很多人第一时间都能想到递归遍历,这是最直接,最简单的办法。在计算机中,函数调用是通过栈(stack)这种数据结构实现的,每当进入一个函数调用,栈就会加一层栈帧,每当函数返回,栈就会减一层栈帧。由于栈的大小不是无限的,所以,递归调用的次数过多,可能会导致栈溢出。当文件夹深度足够深,递归的...
最近做一个统计工作,需要遍历一些文件,一个文件夹下面有很多层的小文件,如何算出这个文件夹下面有多少文件?相信很多人第一时间都能想到递归遍历,这是最直接,最简单的办法。在计算机中,函数调用是通过栈(stack)这种数据结构实现的,每当进入一个函数调用,栈就会加一层栈帧,每当函数返回,栈就会减一层栈帧。由于栈的大小不是无限的,所以,递归调用的次数过多,可能会导致栈溢出。当文件夹深度足够深,递归的...
python 函数的参数可分为位置参数、缺省参数、可变参数和关键字参数。其中可变参数和关键字参数又可以进行拆包。 位置参数 看下面程序: def fun1(a, b): print("a -- " + str(a)) print("b -- " + str(b)) return a + b print(fun1(2, 3)) 显然,程序结果: a ----...
本文转载自链接: https://zycao.com/virtualbox-ubuntu-vboxsguestadditions.html 今天在使用Virtualbox中的Ubuntu虚拟机,打算作为微丫头本地测试,结果屏幕分辨率比较低,不方便使用,就想安装增强功能来实现更改分辨率, 但是在安装时出错:未能加载虚拟光驱 VBoxsGuestAdditions.iso到虚拟电脑 经过...
本文转载自:https://python.jobbole.com/81911/ 该文是目前为止我看到关于python生成器最通俗易懂的文章。故而转载。 生成器(generator)概念 生成器不会把结果保存在一个系列中,而是保存生成器的状态,在每次进行迭代时返回一个值,直到遇到StopIteration异常结束。 生成器语法 生成器表达式: 通列表解析语法,只不过把列表解析的[]换成()...
转。原文地址:https://blog.csdn.net/sean_css/article/details/52674091 办法如下: 首先点击界面上的 + 号(Add)按钮,选择你要下载的模拟器虚拟机版本,点击下载(一定要走这一步,不然会影响下面的步骤) 然后到 C:\Users\你的用户名\AppData\Local\Genymobile 下面打...
最近学习 Python3 ,希望能掌握多线程的使用,在此做个笔记。同时也希望Python 牛人指点错误。关于线程的概念,前面简单总结了一下 java 的多线程,传送门:java 多线程概念,三种创建多线程的方法。 这里记两种多线程的实现方式方法。 Python的标准库提供了两个模块:_thread和threading,_thread是低级模块,threading是高级模块,对_thread进...
进程和线程的概念 进程 几乎所有的操作系统都支持进程的概念。一个任务通常对应一个进程。进程具有如下特征: 进程通常是独立存在的,拥有自己独立的资源。 进程拥有自己的生命周期和各种不同的状态。 多个进程可以在单个处理器上并发执行,多个进程之间不会互相响应。 线程 线程是cpu执行的最小单元,一个进程可以有多个线程。一个线程必须有一个父进程。线程可以拥有自己的堆栈,但不拥有系统...
总结一下Android开发中常见的注意点。 资源 不允许出现 Receiver/AppOps/Cursor/Observer 资源泄露 使用 HandlerThread 要注意退出,否则导致 Thread 和 FD 泄露 不允许出现 global/local references 的 leak 问题 不要多线程调用通过 Binder 返回内容很大的系统接口 不要通过 ...
早前学习委托的时候,写过一点东西,今天带着新的思考和认知,再记点东西。这篇文章扯到设计模式中的策略模式,观察者模式,还有.NET的特性之一——委托。真的,请相信我,我只是在扯淡…… 场景练习 还记得这两个人吗?李雷和韩梅梅,他们见面在打招呼…假设李雷和韩梅梅在中文课上打招呼和英文可上打招呼方式不一样。下面定义两个方法来表示打招呼: //中文方式打招呼 public void Chi...
前言 最近看到一张图,有点意思: 蓝色是(成长+付出),红色是回报。有多久可以达到这个红心,要看我们自已的努力,付出了多少专注与汗水。我想说的是,水平轴并不是时间,如果不能坚持努力,可能永远都到不了那个红心。 背景 最近领导说,之前写了一两个月的 shell 脚本要全部改成 Python 脚本。给我们周五一天时间学习 Python 语法,然后下个周一要投入到工作中。没办法,周末豁出去...