1. 堆 堆是在程序运行时,而不是在程序编译时,申请某个大小的内存空间。即动态分配内存,对其访问和对一般内存的访问没有区别。堆是指程序运行时申请的动态内存,而栈只是指一种使用堆的方法(即先进后出)。 2. 栈(stack)——先进后出,删除与加入均在栈顶操作 栈也称为堆栈,是一种线性表。 堆栈的特性 ...
分类:
其他好文 时间:
2019-03-20 00:38:22
阅读次数:
173
以上为2个Java源文件,否则会编译错误(一个源文件至多有一个public类) 第一次画图,哈哈!!! 栈(先进后出) ...
分类:
其他好文 时间:
2019-03-17 01:23:08
阅读次数:
155
阻塞与非阻塞 阻塞:程序遇到IO操作,导致代码无法继续执行,交出CPU执行权 非阻塞:没有IO操作或者遇到IO操作也不阻塞代码执行 写程序时要尽量减少IO操作 同步与异步 同步:发起一个任务后,必须原地等待任务执行结束,拿到一个明确的结果 异步:发起一个任务后,不需要等待,代码继续往下执行 异步任务 ...
分类:
其他好文 时间:
2019-03-11 18:58:53
阅读次数:
157
lpush()先进后出 //从头部加入元素 //栈 lrange 元素集合 0 -1 lpop 从list头部删除元素,并返回删除元素 rpush()先进先出 //从尾部加入元素 //队列 rpop 从list尾部删除元素,并返回删除元素 linsert list before 集合的元素 插入的元 ...
分类:
其他好文 时间:
2019-03-09 20:19:52
阅读次数:
161
栈和队列也都是线性表,是操作受限的特殊线性表 栈 :先进后出 顺序栈:假设有一个足够大的存储空间data,用于存储栈中的元素,将栈中的元素依次存储到数组中--顺序存储方式--顺序栈。其中设置一个整形变量top,指示栈顶,即栈顶元素的数组下标,也可用来计数元素个数 将数组 data和top作为顺序栈的 ...
分类:
其他好文 时间:
2019-03-08 19:41:16
阅读次数:
175
分析: 首先要用到队列queue,先进后出 最先q.push(1)属于预存1,杨辉三角上一层比下一层的数字少1 第0层 输出1 队列最终状态 01 第二层 输出 1 1 队列最终状态 011 第三层 输出 1 2 1 队列最终状态 0121 ...... //打印杨辉三角 #include<iost ...
分类:
其他好文 时间:
2019-03-07 15:41:51
阅读次数:
141
面向对象进阶 JVM内存分配 1.xxx.java xxx.class (编译器进行) 2.xxx.class 类加载器(三种) 在内存分配空间 3.JVM会将内存分为5块① 栈: Java栈区域比较小,空间大约1M,特点:(存取数据)速度非常快,在栈里边执行的基本上都是快速的任务:基本数据类型和对 ...
分类:
其他好文 时间:
2019-03-06 13:23:41
阅读次数:
154
给定长度为size的数组,将其长度设置为大小为size的栈(队列),添加的数字如果超过了既定的长度就报错! 先实现栈(先进后出); 后实现队列(先进先出); 代码如下: ...
分类:
编程语言 时间:
2019-03-04 21:02:59
阅读次数:
209
栈:满足特点 --> 先进后出,类似于我们生活中的子弹夹【注意】对于栈结构而言:python中没有为其封装特定的函数,我们可以使用list(列表)来模拟栈的特点使用list对象来模拟栈结构存取数据的特点:先进后出 # 定义一个列表对象,stack(变量名、引用名) stack=[] # 向栈中添加数 ...
分类:
编程语言 时间:
2019-02-28 21:30:59
阅读次数:
177
# Author:XiangLiangimport queue#q = queue.LifoQueue() #先进后出 #q = queue.PriorityQueue() #优先级 q = queue.Queue(maxsize=3) #固定大小,先进先出 q.put(1)q.put(2)q.pu ...
分类:
编程语言 时间:
2019-02-27 01:00:02
阅读次数:
237