logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

数据结构:求解第k大(小)数

求解第k大(小)数确定性算法与不确定性算法(随机化算法)确定性算法: 第一次运行结果和第n次结果一致,不会受运行次数的影响。随机化算法: 在算法中使用了随机函数,且随机函数的返回值直接或间接的影响了算法的执行流程或执行结果。而确定性算法是与随机化算法相对来说的 。中位数排序 —— 类似快速排序的方法,目的得到第k小数(类似的有第k大数)1. 确定性算法:方法1理解如下:代码如...

#数据结构
Java 深入理解 ConcurrentHashMap (数据结构、实现原理、JDK版本区别,读写相关锁)

问题:JDK1.7和JDK1.8的ConcurrentHashMap底层数据结构有何区别?JDK1.7和JDK1.8的ConcurrentHashMap实现原理有何区别?HashMap、ConcurrentHashMap主要有何区别?ConcurrentHashMap初始大小、加载因子分别是多少?ConcurrentHashMap的put方法的主要流程?在JDK1.8中ConcurrentHash

#java#数据结构
Android特别的数据结构(一) SparseArray源码解析

SparseArray源码解析,分析其数据结构,及增删改查的实现。分析时间复杂度、与HashMap、TreeMap进行性能对比,包括时间复杂度对比、内存占用对比

文章图片
#android#数据结构#java
数据结构——队列

队列1.定义队列是一种先进先出的线性表2.链队列——队列的链式表示和实现ADT QUEUE 表示//—————— 单链队列 —————— 队列的连式存储结构typedef struct QNode{QElementType data;struct QNode *next;}QNode, *QueuePtr;//节点的结构体,引出节点数据结构Qnode,引出指针...

#数据结构
Android源码分析 —— Activity栈管理(基于Android8)

在Activity启动流程学习的基础上,拓展分析AMS对Activity栈管理的细节,根据activity的不同启动模式和启动标识符flag,来决定Activity的栈管理策略。

文章图片
#android
ASM字节码处理工具原理及实践(一)

我们知道程序的分析。生成和转换是很有用的技术,可以用于很多场景。ASM作为一个Java字节码处理工具,它被设计用于处理已编译的Java类。ASM不是生成和转变已编译的Java类的唯一工具,但它是最新且最有效的工具之一。特点是体积小,速度快,开源。它的作用和JVM的动态性相辅相成,在许多场景下有很好的表现,例如相比于AOP的编译期织入,ASM的操作速度更快。

文章图片
#java#jvm#开发语言
到底了