首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
方向
订阅
酱100880
更多收藏集
微信扫码分享
微信
新浪微博
QQ
73篇文章 · 0订阅
时间复杂度和空间复杂度
数据结构指一组数据的存储结构,而算法是操作数据的一组方法,所以数据结构为算法服务,算法作用于特定的数据结构。 假如有效代码(有赋值操作)每一行的执行时间为一个单位时间,那么上述代码的执行时间可表示为 2n + 2 个单位时间,这里可以看出代码执行时间与每行有效代码执行的次数成正…
hashmap源码-hash算法
这是 hashmap 源码系列文章的第一篇,主要带大家初步了解 hashmap 几个重要的知识点,在后续的文章中会深入讲解框架中各个部分的实现细节。 正常情况下 hashmap 元素存取的时间复杂度都为 O(1),如何做到的呢?这就要得益于它的散列机制,以元素的 key(has…
程序员不得不了解的硬核知识大全
我们每个程序员或许都有一个梦,那就是成为大牛,我们或许都沉浸在各种框架中,以为框架就是一切,以为应用层才是最重要的,你错了。在当今计算机行业中,会应用是基本素质,如果你懂其原理才能让你在行业中走的更远,而计算机基础知识又是重中之重。下面,跟随我的脚步,为你介绍一下计算机底层知识…
一文搞懂 CountDownLatch 用法和源码!
CountDownLatch 是多线程控制的一种工具,它被称为 门阀、 计数器或者 闭锁。这个工具经常用来用来协调多个线程之间的同步,或者说起到线程之间的通信(而不是用作互斥的作用)。下面我们就来一起认识一下 CountDownLatch CountDownLatch 能够使一…
Gradle入门系列(三)——初识Gradle与Project
一个开源的项目自动化构建工具,建立在Apache Ant和Apache Maven概念的基础上,并引入了基于Groovy的特定领域语言(DSL),而不再使用XML形式管理构建脚本。同时,gradle还是一个编程框架,可以让开发者使用编程的思想来实现应用构建。gradle的组成:…
钱被扣走了,但是订单却未成功!支付掉单异常最全解决方案
好了,回归到今天的主题,今天分享一下支付系统中异常一些处理方式。 其实这些处理方式并不只是局限于支付系统,也可以适用于其他系统,大家可以借鉴,应用到自己系统中,提高自己系统的健壮性。 异常是系统运行不可避免会发生的问题,如果一切都正常,我们的系统设计将会相当简单。 但是可惜没有…
【性能优化】面试官:Java中的对象都是在堆上分配的吗?
如果你这样回答,就会被直接Pass掉。 或许有些小伙伴还是不太明白,那我们继续往下看。 首先,我们先给出这个题目的答案,这里我先简短的回答下这个面试题,后续我们会进行相关分析。 你可以这样回答:Java中的对象不一定是在堆上分配的,因为JVM通过逃逸分析,能够分析出一个新对象的…
分布式事务探究(一)
有个叫做X/Open的组织定义了分布式事务的模型,这里面有几个角色,就是AP(Application,应用程序),TM(Transaction Manager,事务管理器),RM(Resource Manager,资源管理器),CRM(Communication Resourc…
2020面试准备之Java 基础(理论篇)
面向过程:面向过程性能比面向对象高。因为对象调用需要实例化,开销比较大,较消耗资源,所以当性能是最重要的考量因素的时候,比如单片机、嵌入式开发、Linux/Unix 等,一般采用面向过程开发。但是,面向过程没有面向对象易维护、易复用、易扩展。 面向对象:面向对象易维护、易复用、…
面试系列-如何设计一个类
1. 类和成员最小化可访问性 要区分设计良好的模块和设计不好的模块,最重要的因素在于,这个模块对于外部其他模块而言,是否隐藏其内部数据和其他细节。设计良好的模块会隐藏所有的实现细节,把它的API与它的实现清晰的隔离起来,模块之间只通过它们的API进行通信,那么,在设计类和成员时…