09 2018 档案

[转]分布式系统唯一ID生成方案汇总
摘要:系统唯一ID是我们在设计一个系统的时候常常会遇见的问题,也常常为这个问题而纠结。生成ID的方法有很多,适应不同的场景、需求以及性能要求。所以有些比较复杂的系统会有多个ID生成的策略。下面就介绍一些常见的ID生成策略。 1. 数据库自增长序列或字段 最常见的方式。利用数据库,全数据库唯一。 优点: 1 阅读全文

posted @ 2018-09-18 21:04 阿泰555 阅读(140) 评论(0) 推荐(0) 编辑

[转]xargs详解
摘要:为什么要用xargs,问题的来源 在工作中经常会接触到xargs命令,特别是在别人写的脚本里面也经常会遇到,但是却很容易与管道搞混淆,本篇会详细讲解到底什么是xargs命令,为什么要用xargs命令以及与管道的区别。为什么要用xargs呢,我们知道,linux命令可以从两个地方读取要处理的内容,一个 阅读全文

posted @ 2018-09-18 20:27 阿泰555 阅读(178) 评论(0) 推荐(0) 编辑

平衡二叉树判断方法简介
摘要:判断该树是不是平衡的二叉树。如果某二叉树中任意结点的左右子树的深度相差不超过1,那么它就是一棵平衡二叉树。方法一:先序遍历 1.计算节点深度 2.递归判断是否平衡 上面的“先序遍历”判断二叉树平衡的方法,时间复杂度比较大。因为,二叉树中的很多结点遍历了多次。 方法二:后序遍历 阅读全文

posted @ 2018-09-17 22:40 阿泰555 阅读(460) 评论(0) 推荐(0) 编辑

[转]MySQL中乐观锁、悲观锁(共享锁、排他锁)简介
摘要:InnoDB与MyISAM Mysql 在5.5之前默认使用 MyISAM 存储引擎,之后使用 InnoDB。 MyISAM 操作数据都是使用的表锁,你更新一条记录就要锁整个表,导致性能较低,并发不高。当然同时它也不会存在死锁问题。 而 InnoDB与MyISAM 的最大不同有两点:一是 InnoD 阅读全文

posted @ 2018-09-08 17:51 阿泰555 阅读(289) 评论(0) 推荐(0) 编辑

[转]从OSI网络模型到TCP/IP协议族简介
摘要:OSI七层模型 OSI(Open System Interconnection,开放系统互联)七层网络模型成为开放式系统互联参考模型,是一个把网络通信在逻辑上的定义,也可以理解成为定义了通用的网络通信规范。而我们的数据在网络中传输的过程,实际上就是如下图的封装和解封装的过程,发送方通过各种封装处理, 阅读全文

posted @ 2018-09-08 09:24 阿泰555 阅读(268) 评论(0) 推荐(0) 编辑

[转](查找一)二叉查找树详解
摘要:在讲解二叉查找树之前,先了解一下二分查找。 二分查找 我们使用有序数组存储键,经典的二分查找能够根据数组的索引大大减少每次查找所需的比较次数。 在查找时,我们先将被查找的键和子数组的中间键比较。如果被查找的键小于中间键,我们就在左子数组中继续查找,如果大于我们就在右子数组中继续查找,否则中间键就是我 阅读全文

posted @ 2018-09-07 20:11 阿泰555 阅读(279) 评论(0) 推荐(0) 编辑

[转](查找二)2-3查找树(二叉三叉树)
摘要:平衡查找树 阅读全文

posted @ 2018-09-07 19:57 阿泰555 阅读(1125) 评论(0) 推荐(0) 编辑

[转](查找三)红黑树详解
摘要:【前言:本文所讨论的红黑树之目的在于使读者能更简单清晰地了解红黑树的构造,使读者能在纸上清晰快速地画出红黑树,而不是为了写出红黑树的实现代码。 若是要在代码级理解红黑树,则势必需要记住其复杂的插入和旋转的各种情况,我认为那只有助于增加大家对红黑树的恐惧,实际面试和工作中几乎不会遇到需要自己动手实现红 阅读全文

posted @ 2018-09-07 18:24 阿泰555 阅读(226) 评论(0) 推荐(0) 编辑

[转](查找四)散列表详解
摘要:散列表是普通数组概念的推广。由于对普通数组可以直接寻址,使得能在O(1)时间内访问数组中的任意位置。在散列表中,不是直接把关键字作为数组的下标,而是根据关键字计算出相应的下标。 使用散列的查找算法分为两步。第一步是用散列函数将被查找的键转化为数组的一个索引。 我们需要面对两个或多个键都会散列到相同的 阅读全文

posted @ 2018-09-07 18:15 阿泰555 阅读(242) 评论(0) 推荐(0) 编辑

[转]ConcurrentHashMap原理分析
摘要:一、背景: 线程不安全的HashMap 因为多线程环境下,使用Hashmap进行put操作会引起死循环,导致CPU利用率接近100%,所以在并发情况下不能使用HashMap。 效率低下的HashTable容器 HashTable容器使用synchronized来保证线程安全,但在线程竞争激烈的情况下 阅读全文

posted @ 2018-09-05 20:51 阿泰555 阅读(152) 评论(0) 推荐(0) 编辑

[转]总结@Autowired 和@Resource
摘要:@Resource的作用相当于@Autowired,只不过@Autowired按byType自动注入,而@Resource默认按byName自动注入罢了。@Resource有两个属性是比较重要的,分是name和type,Spring将@Resource注解的name属性解析为bean的名字,而typ 阅读全文

posted @ 2018-09-05 10:45 阿泰555 阅读(205) 评论(0) 推荐(0) 编辑

[转]HashMap的实现原理
摘要:1. HashMap概述: HashMap是基于哈希表的Map接口的非同步实现。此实现提供所有可选的映射操作,并允许使用null值和null键。此类不保证映射的顺序,特别是它不保证该顺序恒久不变。 2. HashMap的数据结构: 在java编程语言中,最基本的结构就是两种,一个是数组,另外一个是模 阅读全文

posted @ 2018-09-05 00:32 阿泰555 阅读(148) 评论(0) 推荐(0) 编辑

[转]ArrayList的实现原理
摘要:1. ArrayList概述: ArrayList是List接口的可变数组的实现。实现了所有可选列表操作,并允许包括 null 在内的所有元素。除了实现 List 接口外,此类还提供一些方法来操作内部用来存储列表的数组的大小。 每个ArrayList实例都有一个容量,该容量是指用来存储列表元素的数组 阅读全文

posted @ 2018-09-04 13:27 阿泰555 阅读(178) 评论(0) 推荐(0) 编辑

[转]HashMap,LinkedHashMap,TreeMap的区别
摘要:Map主要用于存储健值对,根据键得到值,因此不允许键重复(重复了覆盖了),但允许值重复。 Hashmap 是一个最常用的Map,它根据键的HashCode 值存储数据,根据键可以直接获取它的值,具有很快的访问速度,遍历时,取得数据的顺序是完全随机的。HashMap最多只允许一条记录的键为Null;允 阅读全文

posted @ 2018-09-04 13:11 阿泰555 阅读(161) 评论(0) 推荐(0) 编辑

[转]单例模式详解
摘要:3.1 单例模式的动机 对于一个软件系统的某些类而言,我们无须创建多个实例。举个大家都熟知的例子——Windows任务管理器,如图3-1所示,我们可以做一个这样的尝试,在Windows的“任务栏”的右键弹出菜单上多次点击“启动任务管理器”,看能否打开多个任务管理器窗口?如果你的桌面出现多个任务管理器 阅读全文

posted @ 2018-09-04 11:49 阿泰555 阅读(206) 评论(0) 推荐(0) 编辑

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示