![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JAVA
皮皮go
无问西东
展开
-
如何判断一棵树是否是平衡二叉树
1.定义平衡二叉树是一棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树2.代码实现public boolean IsBalanced_Solution(TreeNode root) { if(root == null)return true; return isBalanceTree(root.left) && isBal...原创 2019-07-09 10:46:37 · 443 阅读 · 0 评论 -
手写一个LinkedList
对主要的增删改查函数进行了实现package basicKnowledge.集合框架.linkedList;import basicKnowledge.集合框架.arrayList.MyArrayList;import java.util.Collection;import java.util.Iterator;import java.util.ListIterator;...原创 2019-07-23 15:38:41 · 99 阅读 · 0 评论 -
JAVA之多态
1 多态含义通过指向父类的引用来调用不同子类所实现的方法2 表现形式 普通类 抽象类 接口 参考文献https://blog.csdn.net/lingang1991/article/details/69905944...原创 2019-08-05 14:11:33 · 100 阅读 · 0 评论 -
java集合转数组(Collection转array)
在JDK内置的集合框架中,Collection接口提供了集合转数组的的两个方法 Object[] toArray(); <T> T[] toArray(T[] a); 对于无参的toArray()函数,其返回值类型为Object[],此时不能强制转换成其他类型,若强转将会抛出ClassCastException异常代码测试packa...原创 2019-08-01 16:13:41 · 9227 阅读 · 0 评论 -
JVM的类加载机制以及双亲委派模型
1 类与类加载器类加载:通过一个类的全限定名来获取描述此类的二进制字节流对于任意一个类,都需要由加载它的类加载器和这个类本身一同确定其在Java虚拟机中的唯一性。换句话说,如果两个类来源于通过一个class文件,但是由不同的类加载器加载,那么这就是两个不同的类1.1 代码验证package basicKnowledge.jvm.classload;import su...原创 2019-08-13 16:39:58 · 108 阅读 · 0 评论 -
手写一个优先队列(PriorityQueue)
实现了优先队列的添加与删除方法优先队列利用最小堆来实现 主要方法:删除堆顶元素、添加元素后最小堆的维护代码实现package basicKnowledge.集合框架.priorQueue;import basicKnowledge.集合框架.queue.MyListQueue;import com.sun.xml.internal.bind.v2.schemagen.x...原创 2019-08-19 17:44:26 · 1250 阅读 · 0 评论 -
华为2020校招笔试题答案
8.21 笔试题答案题目链接:https://pan.baidu.com/s/1HHFlCsQR8yFB4CRWPW9zIQ第一题有个问题:题目要求读入的长度是16进制的,懒得改了,所以大家自己改过来就行import java.util.*; public class Main { public static void main(String[] args)...原创 2019-09-29 22:33:37 · 1347 阅读 · 0 评论 -
滴滴笔试题答案
帮别人看的,不知AC如何(题目来源于牛客网)方法1:分别用两个指针指向两个数组中未删除元素的首位置,每次取较大的那个元素,然后在另一个队列中找到与较大元素相等的那个元素,然后将两个元素之前的所有元素移除,重复这个过程。(但这个方法无法解决有重复数字的情况,如序列1:1 2 3 4 5,序列2:5 4 1 5 7。正确输出为2,但该方法输出为零)import java.ut...原创 2019-08-27 21:04:22 · 1360 阅读 · 0 评论 -
内部类
Java 内部类详解转载 2019-07-22 15:08:33 · 83 阅读 · 0 评论 -
java二维数组初始化的三种方式
有些知识觉得很简单,但其中一些细节性的东西我们未必知道,比如说数组的定义以及初始化的方式。下面主要介绍下二位数组初始化的三种方式1、定义数组的同时使用大括号直接赋值,适合数组元素已知的情况2、定义二维数组的大小,然后分别赋值3、数组第二维的长度可变化 //第一种方式:定义的同时大括号直接复制 int[][] array1={{1,3,1},{...原创 2019-07-30 17:16:10 · 7996 阅读 · 0 评论 -
二叉树的创建
快被够死了,研究了一天,提供两种创建方式仅供参考根据输入字符创建 根据字符串创建package basicKnowledge.tree;import java.util.Arrays;import java.util.Scanner;/** * @基本功能:根数输入数据创建二叉树 * @program:summary * @author:peicc * @crea...原创 2019-07-25 17:02:00 · 294 阅读 · 0 评论 -
JVM对象
1.对象的创建通过new创建对象时,首先检查这个符号引用所代表的类是否已经被加载、解析和初始化过。如果没有,执行相应的类加载过程。2.内存分配对象所需要的内存空间在类加载完成后便可完全确定2.1分配方法1.指针碰撞;2.空闲列表2.2选择依据选择哪种分配方式由Java堆是否规整决定,而Java堆是否规整又由所采用的垃圾收集器是否带有压缩整理功能而决定。...原创 2019-07-11 17:09:32 · 102 阅读 · 0 评论 -
手写一个ArrayList
实现了增删改查四项基本功能 实现了Iterator迭代器 实现了数组的动态扩容package basicKnowledge.集合框架.arrayList;import java.util.Iterator;import java.util.NoSuchElementException;import java.util.function.Consumer;/** * @p...原创 2019-07-18 16:09:03 · 98 阅读 · 0 评论 -
直接插入排序与希尔排序
1.直接插入排序基本思想将待排序的数据分为两部分,其中一部分为有序数据,然后遍历无序数据,分别将无序数据插入到有序序列中基本步骤 设定循环次数(第一个数据为有序数据,然后从第二个数据开始循环,直到最后一个数据) 设定待排序的数据以及已排序数据的最后一个数的位置 从已排序数据的最后一个数据开始往前循环,如何插入数据小于已排序数据的当前数,将已排序数据后移...原创 2019-07-18 21:50:20 · 129 阅读 · 0 评论 -
队列的Java实现
利用数组实现循环队列循环队列为空的条件:font==rear 循环队列已满的条件:(rear+1)%length=font 循环队列实际元素个数的计算方式:(rear-font+length)%length 循环队列队头、队尾指针的后移规则:font=(font+1)%length rear=(rear+1)%lengthpackage basicKnowledge.集合...原创 2019-07-24 10:52:26 · 108 阅读 · 0 评论 -
Java集合之fail-fast
1 fail-fast简介fail-fast是java集合(Collection)的一种错误机制 当多个线程对同一个集合的内容进行操作时,就可能产生fail-fast事件2 代码测试package basicKnowledge.集合框架.arrayList;import java.util.ArrayList;import java.util.Iterator;/*...原创 2019-07-19 16:42:11 · 186 阅读 · 0 评论 -
阿里巴巴开发手册之Arrays.asList
规范内容代码测试package basicKnowledge.集合框架;import java.util.Arrays;import java.util.List;/** * @program:summary * @author:peicc * @create:2019-07-17 14:46:16 **///测试Arrayspublic class Arr...原创 2019-07-17 15:28:14 · 128 阅读 · 0 评论 -
剑指Offer:字符串的排列
题目描述输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。基本思路 1、要想求得字符串的全排列,首先确定第一个字符,然后求剩下字符的全排列 2、要想求得剩下字符的全排列,则需要确定剩下字符的第一个字符,然后再求剩下字符除去第一个字符的全排列(...原创 2019-08-02 18:42:46 · 120 阅读 · 0 评论 -
剑指Offer:重建二叉树
题目描述输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。思路分析 该题型属于根据二叉树的前序和中序遍历,写出二叉树的后续遍历类似 根据前序遍历,可以判断根节点 根据中序遍...原创 2019-07-25 15:53:25 · 97 阅读 · 0 评论 -
java中nextLine无法读入字符串的问题
一直习惯了使用next()方法读取字符串,今天遇到需要每次读取一行数据的需求,于是便想到了使用nextLine()方法。但使用的时候发现问题出现了,使用nextLine读取的字符串为空。一起通过下面这个例子来看下。输入描述第一行输入一个整数N,表示字符串的数量。接下来的N行每行输入一个字符串。如3abcdefhij输出描述每读到一个字符串将其打印输出...原创 2019-10-07 12:19:23 · 1291 阅读 · 0 评论