接着第二课的内容和带点第三课的内容。 (回顾)准备一个栈,从大到小排列,具体参考上一课.... 构造数组的MaxTree 【题目】 定义二叉树如下: public class Node{ public int value; public Node left; public Node right; p ...
分类:
编程语言 时间:
2019-02-21 12:17:51
阅读次数:
227
一个典型类的定义: Java虚拟机的内存可以分为三个区域:栈stack、堆heap、方法区method area。 栈的特点如下: 1. 栈描述的是方法执行的内存模型。每个方法被调用都会创建一个栈帧(存储局部变量、操作数、方法出口等) 2. JVM为每个线程创建一个栈,用于存放该线程执行方法的信息( ...
分类:
编程语言 时间:
2019-02-14 22:28:55
阅读次数:
184
当一个人开始学习Java或者其他编程语言的时候,会接触到堆和栈,由于一开始没有明确清晰的说明解释,很多人会产生很多疑问,什么是堆,什么是栈,堆和栈有什么区别?更糟糕的是,Java中存在栈这样一个后进先出(Last In First Out)的顺序的数据结构,这就是java.util.Stack。这种 ...
分类:
编程语言 时间:
2019-02-12 17:08:01
阅读次数:
168
1.所有对象和数组都是在堆里创建的 一个方法一个栈帧 int[ ] ages = new int[ ]{10,20,30}; 在堆中初始化数组 ,new(将10,20,30的内存地址赋值给了ages) System.out.println(ages); 【[I@15db9742】输出内存地址 jav ...
分类:
编程语言 时间:
2019-01-28 23:54:56
阅读次数:
363
评测传送门 【问题描述】 你是一个公司的员工,你会按时间顺序受到一些产品的订单,你需要用一个栈来改变这些订单的顺序(每个产品都必须入栈和出栈一次)。 按初始顺序,每次可以将一个产品入栈,或将栈顶产品弹至现在的序列末尾。 每个产品有一个制作时间t i 和单位时间惩罚值d i 。 总的惩罚值为∑ ni= ...
分类:
编程语言 时间:
2019-01-28 01:30:09
阅读次数:
219
栈和队列我们可以用C++里自带的函数使用,就不必手写了 1、栈,需要开头文件 #include<stack> 定义一个栈s:stack<int> s; 具体操作: s.empty() 如果栈为空返回true,否则返回false s.size() 返回栈中元素的个数 s.pop() 删除栈顶元素但不返 ...
分类:
编程语言 时间:
2019-01-20 11:47:33
阅读次数:
139
概念: 提供代码的执行环境; 对于代码执行要有作用域的概念; 开辟一个栈内存;只有关闭浏览器这个栈内存才会销毁; 1、全局作用域: 一打开浏览器,浏览器就会形成一个全局作用域; 在控制台写代码就相当于在全局作用域里写代码 ; 在全局作用域声明的变量我们称之为全局变量; 2、私有作用域 (1)私有变量 ...
分类:
其他好文 时间:
2019-01-19 21:47:21
阅读次数:
218
Java虚拟机相关操作: 分区问题: 堆:存放创建的对象 栈:每个线程一个栈 程序计数器:每个栈一个程序计数器 静态区: GC问题: 垃圾收集问题 ...
分类:
其他好文 时间:
2019-01-18 16:27:45
阅读次数:
150
一个较难得模拟题 用到了 deque 和queue 操作说明: queue qu: qu.push(x); int d=qu.front(); qu.pop(); 和栈一样只有push和pop操作,front是看第一个! 栈里面是top deque de: de.push_front(x); de. ...
分类:
其他好文 时间:
2019-01-18 00:50:19
阅读次数:
245
所谓栈,就是一种先进后出的数据结构。 何为先进后出?想象一个箱子,你往箱底塞了一本语文书,然后往语文书上放数学书。假设箱子底面积与书的面积相同,那么你想把先放进去的语文书拿出来,就必须得先把放在上面的数学书拿出来。所以“先进”的语文书与数学书比较是“后出”的。 在代码中一个栈由一个数组$stk$和一 ...
分类:
其他好文 时间:
2019-01-16 18:03:24
阅读次数:
132