04 2018 档案
摘要:Scanner类 使用Scanner时需要导入 java.util.Scanner 几个常用的方法 |方法名|说明| |: | | |hasNextXxx() |是否还有下一个输入,Xxx可以是Int、Long等基本数据类型,hasNext()判断是否还有字符串 | |nextXxx() |获取下一
阅读全文
摘要:枚举类本质上也是一个类,不过对比普通的类枚举类有自己的一些特点。 1.使用enum定义的枚举类默认继承于java.lang.Enum,所以自定义的枚举类不能显式的继承其他类。 2.使用enum定义的非抽象的枚举类,默认使用final修饰,也就是说它不能有子类。 3.枚举类的构造器只能用private
阅读全文
摘要:lambda表达式的语法 不过在各种情况下可以有各种简写: 1. 参数类型可以省略,系统会根据上下文来判断参数类型,就像这样 2. 当只有一个参数的时候,()也可以不写,就像这样 3. 当只有一条语句的时候,{}可以不写,就像这样 4. 当没有参数的时候,()是需要写的,就像这样 使用lambda的
阅读全文
摘要:内部类 定义在其他类内部的类。由于内部类的上级是外部类,所以内部类可以比外部类多使用三个修饰符:private,protected,static。 在JVM看来,内部类也是一些独立的类,在编译的时候会将每个内部类编译成OuterClass$InnerClass.class类似的文件,等级和外部类一样
阅读全文
摘要:== 1.如果两个变量是基本类型变量,且都是数值类型,则只要两个变量的值相等,就返回true 2.如果两个变量的引用变量,则只用当这两个变量指向同一个对象的时候,才返回true 3.如果一个变量是基本类型变量,另一个是基本类型的包装类,只要值相等也返回true equals 没有经过重写的equal
阅读全文
摘要:单行注释:在需要注释的内容前面加上双斜线(//) 多行注释:将需要注释的内容用 /* */ 包含起来 文档注释:/** */ 文档注释用于生成API文档(使用javadoc来生成),API文档主要用来说明类、成员变量、方法的功能。所以,javadoc工具只处理在类、接口、内部类、成员变量、方法、构造
阅读全文
摘要:冯诺依曼结构(普林斯顿结构) 冯诺依曼结构是一种将程序 指令存储器和数据存储器合并在一起的存储器结构 。程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,因此程序指令和数据的宽度相同,如英特尔公司的8086中央处理器的程序指令和数据都是16位宽。 哈佛结构 哈佛结构是一种将程序 指令存储
阅读全文
摘要:题目:输入一颗二叉树和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。
阅读全文
摘要:题目:输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。 思路挺清晰的,但是不知道为什么,提交了好几次都只能通过部分用例,最后修修改改才通过的。总感觉我的这个做法不太好。 首先,后序遍历的最后一个元素是树的根节点
阅读全文
摘要:题目:从上往下打印出二叉树的每个节点,同层节点从左至右打印。 给定的树节点结构: 二叉树的层次遍历,借助一个队列来实现。 代码如下:
阅读全文
摘要:题目:输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长度是相等
阅读全文
摘要:题目:定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的min函数。 由于在给定的代码中有 import java.util.Stack; 所以就直接用Stack来实现。这里使用了两个栈,一个(stack)用来保存所有push进来的元素,另一个(minStack)用来保存按照push的顺序的
阅读全文
摘要:题目:输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打印出数字1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10。 我的想法是:每当将一行的所有元素
阅读全文
摘要:题目:操作给定的二叉树,将其变换为源二叉树的镜像。 给定的树节点结构: 我的想法:从根节点开始,所有节点的左右子树交换。 代码如下:
阅读全文
摘要:题目:输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构) 给定的树节点结构: 一开始想在一个方法里面递归,看能不能得出结果,试了几次都失败了。最后只能将判断是否为子树的方法单独提出来,分成两个方法,一个寻找根节点,另一个由这个根节点root1开始,判断root
阅读全文
摘要:题目:输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。 给定的结点结构: 我的想法是:先随便定义一个结点作为开始结点,初始状态:current和head都指向开始结点。比较list1和list2当前的值,较小的那个作为current的next结点,同时向后
阅读全文
摘要:题目:输入一个链表,反转链表。 给定的结点结构: 我的想法是:用三个结点first,head,second分别来表示前一个结点,当前结点,和后一个结点。三个结点的初始状态:first为null,head为第一个结点,second为第二个结点,三个结点同步移动,每移动一次,便将head的next由原来
阅读全文
摘要:题目:输入一个链表,输出该链表中倒数第k个结点。 给定的链表节点: 一开始我的想法是,先定义一个长度为k的ListNode数组,然后遍历一遍链表的所有节点,并把每个节点循环存到这个数组里面。“循环存”就是当数组存满的时候,返回到数组第0个位置开始覆盖存储,最后从倒数第一个逆推到倒数第k个。 代码如下
阅读全文
摘要:题目:输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。 因为这道题目给定的方法没有返回值,也就是说我们最后要改变原数组,所以我考虑直接在原数组上面操作。 我的想法大致是这样的:
阅读全文

浙公网安备 33010602011771号