摘要: 首先要明确一个概念,变量的内存分配发生在定义的时候 忽略常数,用O(1)表示 递归算法的空间复杂度=递归深度N*每次递归所要的辅助空间 对于单线程来说,递归有运行时堆栈,求的是递归最深的那一次压栈所耗费的空间的个数,因为递归最深的那一次所耗费的空间足以容纳它所有递归过程。a = 0b = 0prin 阅读全文
posted @ 2019-07-24 15:40 知亦行 阅读(30255) 评论(0) 推荐(8) 编辑
摘要: ⑴ 找出算法中的基本语句; 算法中执行次数最多的那条语句就是基本语句,通常是最内层循环的循环体。 ⑵ 计算基本语句的执行次数的数量级; 只需保留f(n)中的最高次幂正确即可,可以忽略所有低次幂和最高次幂的系数。 ⑶ 用大Ο记号表示算法的时间性能。 将基本语句执行次数的数量级放入大Ο记号中。 如果算法 阅读全文
posted @ 2019-07-24 11:38 知亦行 阅读(70050) 评论(4) 推荐(36) 编辑
摘要: 当一个结构,如数组、链表、树、图,在逻辑结构中只有一种定义,而在物理结构中却有两种选择,那么这个结构就属于逻辑结构; 相反,当此结构在原有基础上加上了某种限定,使得其在物理结构中只有一种定义,那么这个结构就属于物理(存储)结构; 举例1:栈属于什么结构? 分析:栈在逻辑结构中只能属于线性结构,而在物 阅读全文
posted @ 2019-07-24 10:31 知亦行 阅读(8642) 评论(4) 推荐(2) 编辑