![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
笔记
太阳石笑笑
这个作者很懒,什么都没留下…
展开
-
java反射之java内存分析
java内存可以分为:堆,栈,方法区下面分别介绍它们的作用:堆:可以存放new的对象和数组,可以被所有线程共享,不会存放别的对象的引用栈:存放基本数据类型(会包含这个基本类型的具体数值),引用对象的变量(会存放这个引用在堆里面的具体地址)方法区:可以被所有的线程共享,包含了所有class和static变量类的加载过程:当程序主动使用某个类时,如果该类还没有被加载到内存中,则系统会通过如下三个步骤来对该类进行初始化:类的加载(Load):将类的class文件读入内存,并为之创建一个java.l原创 2020-08-10 08:58:02 · 259 阅读 · 0 评论 -
java反射之所有类型的class对象
今天简单介绍一下具有class对象的一些类型:class:外部类,成员(成员内部类,静态内部类),局部内部类,匿名内部类interface:接口[]:数组enum:枚举annotation:注解@interfaceprimitive type:基本数据类型void写一个小demo验证一下://所有类型的classpublic class test03 { public static void main(String[] args) { Class c1 = Obj原创 2020-08-10 08:41:02 · 141 阅读 · 0 评论 -
leetcode刷题递归方法学习(java)
最近在刷leetcode题,发现树那部分,用到很多次递归,之前只是会用,不知道具体的原理,今天来探究一下吧~先看了下这个博客,发现写的蛮好的,https://www.cnblogs.com/Ivy-s/p/6964851.html。可以大概总结一下,有以下几点要注意的:第一:程序执行递归过程,会将中间的结果保存在栈中,一直要执行到返回条件才会弹出结果,然后返回到栈中的上一个结果继续运算。第二:递归函数中必须包含可以终止递归调用的语句来避免死循环。这两点都比较重要,后续会通过具体代码分析这两点用法原创 2020-07-18 00:24:09 · 163 阅读 · 0 评论 -
LeetCode108将有序数组转换为二叉搜索树(java)
首先介绍一下,高度平衡的二叉搜索树是什么? 高度平衡的二叉搜索树对每一个结点x,x的左子树与右子树的高度差(平衡因子)至多为1。 再看这个题目,比较容易想到的方法就是递归了,因为对于左右子树而言,如果把他们分别看作一个树,左右子树拥有相同的结构,根节点,左右子树。因此,我们先提供一种常规的方法,首先确定根节点的值,为了保证左右子树的高度差至多为1,选择中间节点作为二叉树的根节点,然后左右节点依次类推。不多说,直接看代码,代码会更清楚public TreeNode sortedA..原创 2020-07-13 00:51:29 · 114 阅读 · 0 评论 -
Leetcode 1343题解决(java)
Leetcode 1343题解决(java)这道题是求解大小为k,且平均值大于等于阀值的子数组的数目,然后求出均值大于threshold的数组。看到题目的第一感觉是,应该先列出所有长度为k的子数组,尝试了两种方法:第一种是,求出所有长度为k的数组,分别求出这些子数组的均值,如果大于阈值,进行累加。话不多说,直接上代码。public int getSubArray(int[] array, int k, int threshold) { int length = array.length原创 2020-06-07 23:41:41 · 446 阅读 · 0 评论 -
Leetcode 406 (java)根据身高重建队列
题目很有意思,(h,k)分别表示身高以及排在这个人前面并且身高大于自己的人数,然后重新建立这个队列说实话,刚刚看到这道题的我有点懵,花了蛮久才搞清楚题目的意图,是要按照身高以及那个序号k,重新建立这个队列,有种想法,身高重的应该放在前面,顺序不会轻易改变,然后,同等身高的话,就去看顺序号k,应该就ok了。渣渣的我,其实没有做出来这道题,看到大佬的答案,一开始也是看不懂,经过反复的推敲打磨,才真正搞明白,下面就由我给大家剖析一下,我觉得很有趣的一个大佬的答案吧!二话不说,先看代码:public int原创 2020-06-08 00:16:44 · 369 阅读 · 0 评论