上一页 1 ··· 31 32 33 34 35 36 37 38 39 ··· 44 下一页
摘要: 使用dfs(深度优先) 使用递归的平衡因子的方法:9(0,0);15(0,0);7(0,0);20(1,1);3(1,2);很显然还需要+1,才可以实现树的深度记录。 class Solution: def maxDepth(self, root: TreeNode) -> int: if not  阅读全文
posted @ 2020-04-23 09:41 topass123 阅读(105) 评论(0) 推荐(0) 编辑
摘要: 死锁的概念 所谓死锁是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用, 它们都将无法推进下去,此时称系统处于死锁状态或系统产生了死锁。 死锁产生的四个必要条件 互斥条件:一个资源每次只能被一个进程使用;若其他进程申请使用该资源,必须等到该资源被释放为止; 请求 阅读全文
posted @ 2020-04-22 21:14 topass123 阅读(135) 评论(0) 推荐(0) 编辑
摘要: 进程的状态有:运行态,就绪台,阻塞态。如下图示: 注意区别就绪状态和等待状态:就绪状态是指进程仅缺少cpu,只要获得cpu资源就立即执行;而等待状态是指进程需要其他资源(除了cpu)或等待某一事件。 用户态和核心态的区别。 当一个任务(进程)执行系统调用而陷入内核代码中执行时,我们就称进程处于内核运 阅读全文
posted @ 2020-04-22 15:43 topass123 阅读(2452) 评论(0) 推荐(1) 编辑
摘要: 线程同步的方式: 1)临界区:通过对多线程的串行化来访问公共资源或者一段代码,速度快,适合控制数据访问 2)互斥量:只有用户互斥对象的线程才可以访问公共资源。互斥不仅仅能够实现统一应用程序的公共资源安全共享,还可以实现不同应用的公共资源的安全共享。 3)信号量:它允许同一时刻多个线程访问同一资源,但 阅读全文
posted @ 2020-04-22 14:36 topass123 阅读(134) 评论(0) 推荐(0) 编辑
摘要: 一、管道 管道,通常指无名管道,是 UNIX 系统IPC最古老的形式。 1、特点: 它是半双工的(即数据只能在一个方向上流动),具有固定的读端和写端。 它只能用于具有亲缘关系的进程之间的通信(也是父子进程或者兄弟进程之间)。 它可以看成是一种特殊的文件,对于它的读写也可以使用普通的read、writ 阅读全文
posted @ 2020-04-22 11:25 topass123 阅读(275) 评论(0) 推荐(0) 编辑
摘要: 进程?线程? 进程是对运行程序的封装,是系统进行资源调度和分配的基本单位,实现了操作系统的并发。 其实现的过程:用户运行xx程序,系统就创建一个进程同时为其分配(内存空间,磁盘空间,I/O设备)资源,将该进程放到就绪队列中等待,被进程调度器选中。这就运行起来了。 线程是进程的子任务,是cpu调度和分 阅读全文
posted @ 2020-04-22 11:06 topass123 阅读(217) 评论(0) 推荐(0) 编辑
摘要: HTTPS是一种通过计算机网络进行安全通信的传输协议,经由HTTP进行通信,利用SSL/TLS建立全信道,加密数据包。 HTTPS使用的主要目的是提供对网站服务器的身份认证,同时保护交换数据的隐私与完整性。 注意:TLS是ssl的前身。 http与https的区别 https协议需要到ca申请证书, 阅读全文
posted @ 2020-04-22 08:44 topass123 阅读(185) 评论(0) 推荐(0) 编辑
摘要: http是超文本传输协议,基于TCP/IP协议通讯来传递消息。 HTTP协议工作于客户端-服务端架构上。浏览器作为HTTP客户端通过URL向HTTP服务端即WEB服务器发送所有请求。 Web服务器根据接收到的请求后,向客户端发送响应信息。HTTP默认端口号为80。 HTTP特点:无状态:协议对客户端 阅读全文
posted @ 2020-04-22 00:08 topass123 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 浅拷贝后,改变原始对象中为可变类型的元素的值,会同时影响拷贝对象;改变原始对象中为不可变类型的元素的值,不会响拷贝对象。 地址是完全一致的。 #定义一个列表,第一个元素是可变类型>>> A = [[2],'fei',90]#浅拷贝 >>> B = copy.copy(A)#对象地址是否相同 >>> 阅读全文
posted @ 2020-04-19 23:59 topass123 阅读(160) 评论(0) 推荐(0) 编辑
摘要: 不可变数据类型 不可变数据类型在第一次声明赋值声明的时候, 会在内存中开辟一块空间, 用来存放这个变量被赋的值, 而这个变量实际上存储的, 并不是被赋予的这个值, 而是存放这个值所在空间的内存地址, 通过这个地址, 变量就可以在内存中取出数据了. 所谓不可变就是说, 我们不能改变这个数据在内存中的值 阅读全文
posted @ 2020-04-19 23:51 topass123 阅读(145) 评论(0) 推荐(0) 编辑
上一页 1 ··· 31 32 33 34 35 36 37 38 39 ··· 44 下一页