##一、数据存储结构 数据存储的常用结构有:堆栈、队列、数组、链表。 ###1.1 堆栈 ① 先进后出 ② 压栈:存元素 ③ 弹栈:取元素 ###1.2 队列 ① 先进先出 ② 出队 ③ 入队 ###1.3 数组 ① 查找元素快:通过索引,可以快速访问指定位置的元素 ② 增删元素慢: 👐 指定索引 ...
分类:
其他好文 时间:
2020-11-19 12:28:51
阅读次数:
5
Java中的内存管理 要了解Java中的内存泄漏,首先就得知道Java中的内存是如何管理的。 在Java程序中,我们通常使用 new 为对象分配内存,而这些内存空间都在堆上。 Java判断对象是否可以回收使用的而是可达性分析算法。 这个算法的基本思路就是通过一系列名为 "GC Roots" 的对象作 ...
分类:
编程语言 时间:
2020-11-19 12:22:42
阅读次数:
8
(1)String str1=new String("A"+"B") ; 会创建几个对象 ? "a"在字符串常量池创建,这是第一个对象 "b"在字符串常量池创建,这是第二个对象 “a”+"b"组合"ab"在字符串常量池创建,这是第三个对象 new String(),在堆中分配内存,里面存着这字符串" ...
分类:
编程语言 时间:
2020-11-19 12:03:53
阅读次数:
5
在业务场景中,处理一个任务队列,可能需要依照某种优先级顺序,这时,Java中的PriorityQueue(优先队列)便可以派上用场。优先队列的原理与堆排序密不可分,可以参考我之前的一篇博客: 堆排序总结与实现 原理 PriorityQueue中维护一个Queue[]数组,在逻辑上把它理解成一个小根堆 ...
分类:
其他好文 时间:
2020-11-19 12:02:21
阅读次数:
7
继之前的mysql夺命连环之后,我发现我这个标题被好多套用的,什么夺命zookeeper,夺命多线程一大堆,这一次,开始面试题系列MQ专题,消息队列作为日常常见的使用中间件,面试也是必问的点之一,一起来看看MQ的面试题。 你们为什么使用mq?具体的使用场景是什么? mq的作用很简单,削峰填谷。以电商 ...
分类:
其他好文 时间:
2020-11-18 13:17:35
阅读次数:
6
第十四章 Java反射机制 反射的概述 关于反射的理解 Reflection(反射)是被视为动态语言的关键,反射机制允许程序在执行期借助于Reflection API取得任何 类的内部信息,并能直接操作任意对象的内部属性及方法。 加载完类之后,在堆内存的方法区中就产生了一个Class类型的对象(一个 ...
分类:
编程语言 时间:
2020-11-18 12:58:09
阅读次数:
9
背景: 集成一个斑马无线条码打印机,报了一堆错误 classes in a single dex file methods 67667 大于 65536 后来 Unable to get provider com.open.hule.library.downloadmanager.DownloadF ...
分类:
其他好文 时间:
2020-11-17 12:14:45
阅读次数:
5
架构师之路年终总结(八)-算法篇写了几万字关于算法与数据结构的文章,稍作总结,希望对大家有帮助。画外音:都是面试官最喜欢问的,必须要掌握。1.TopK问题六种方法求解TopK问题,阅读量超高。《拜托,面试别再问我TopK了!》全局排序、局部排序,堆,分治法,减治法,随机选择等六种方法,时间复杂度从平方到线性,彻底搞懂TopK。画外音:分治法,减治法的本质是什么?2.数1问题四种方法求解数1问题,阅
分类:
编程语言 时间:
2020-11-16 13:54:58
阅读次数:
14
为什么不用Rust?收录于话题#最近文章5个最近我读了一篇批评Rust的文章,虽然它提出了一堆好的观点,但我并不认同它--这是一篇容易引起争论的文章。总的来说,我不会推荐一篇批评Rust的文章。这是一个遗憾--正视缺点是很重要的,但也需要反对那些草率的或者不准确失误的批判。所以,下面是我力挺Rust的一些理由。不是所有的开发都是系统编程Rust是一种系统编程语言。它提供了对数据布局和代码运行时行为
分类:
其他好文 时间:
2020-11-13 12:40:47
阅读次数:
4
现象 策划反应服务器进不去,远程看了一下进程消失了(crash),有时候也会出现能登录,但是无法执行操作(进程还在),无法被正常shutdown,进程根目录下出现了java_pid16298.hprof文件,一看到就是内存溢出了,觉得奇怪,应该不会是堆内存溢出,因为人数不多,初步怀疑是永久区溢出(J ...
分类:
Web程序 时间:
2020-11-12 13:58:51
阅读次数:
10