摘要:
系统性学习,移步IT-BLOG 要进行 Redis 的故障定位,一般通过分析 Redis 日志、应用日志和 Redis 的监控信息来定位相关问题。 一、Redis 日志设置 【1】日志文件:Redis 默认日志在控制台打印,启动时即可看到对应日志打印到控制台上。建议修改 redis.config 的 阅读全文
摘要:
一、概述 【1】Redis 是基于 Reactor 模式开发的网络事件处理器:这个处理器被称为文件事件处理器(file event handler),这个文件事件处理器是单线程的,所以 Redis 才叫做单线程的模型: ■ 文件事件处理器使用 I/O 多路复用(multiplexing)机制监听多个 阅读全文
摘要:
更多内容,前往 IT-BLOG 哈希表(Hash table,也叫散列表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。给定表M,存在函数f(key),对任 阅读全文
摘要:
更多内容,前往 IT-BLOG 一、稀疏数组的定义 稀疏(sparsearray)数组:可以看做是普通数组的压缩,但是这里说的普通数组是值无效数据量远大于有效数据量的数组。 稀疏数组的应用场景:五子棋程序,有存盘退出和续上盘的功能,将五子棋盘转化成二维数组如下所示:分析上述问题:因为该二维数组默认的 阅读全文
摘要:
更多内容,前往 IT-BLOG 单链表是一种链式存取的数据结构,用一组地址任意的存储单元存放线性表中的数据元素。链表中的数据是以结点来表示的,每个结点的构成:元素(数据元素的映象) + 指针(指示后继元素存储位置),元素就是存储数据的存储单元,指针就是连接每个结点的地址数据。链表是有序的列表,但是它 阅读全文
摘要:
更多内容,前往 IT-BLOG 它的最坏,最好,平均时间复杂度均为O(nlogn),它也是不稳定排序。首先简单了解下堆结构。 一、什么是堆 【1】堆是一个完全二叉树,特点是从上往下,从左往右以次排列的;【2】在堆的数据结构中,堆中的最大值总是位于根节点,所有父节点都满足大于等于其子节点; 我们对堆 阅读全文
摘要:
更多内容,前往 IT-BLOG 归并排序(MERGE-SORT)是利用归并的思想实现的排序方法,该算法采用经典的分治(divide-and-conquer)策略(分治法将问题分(divide)成一些小的问题然后递归求解,而治(conquer)的阶段则将分的阶段得到的各答案"修补"在一起,即分而治之) 阅读全文
摘要:
快速排序(QuickSort)是对冒泡排序的一种改进。基本思想是:通过一趟排序将需要排序的数据分成独立两部分,其中一部分的所有数据都比另一部分的所有数据都要小,然后再按照此方法对这两组数据分别进行快速排序,这个排序过程可以递归进行,以此达到整个数据变成有序序列。 一、基本介绍 快速排序是实践中的一种 阅读全文
摘要:
更多内容,前往 IT-BLOG AVL (平衡二叉树:追求"完全平衡")树的另一种变种是红黑树(Red-Black-Tree:只要求部分达到平衡)其就是一个二叉查找树。对红黑树的操作在最坏情形下花费 时间。红黑树是具有下列着色性质的二叉查找树:<br />【1】每个节点或者是黑色,或者是红色。<br 阅读全文
摘要:
更多内容,移步 IT-BLOG 一、JAVA中的几种基本数据类型 Java语言中一共提供了8种原始的数据类型(byte,short,int,long,float,double,char,boolean),这些数据类型不是对象,而是 Java语言中不同于类的特殊类型,这些基本类型的数据变量在声明之后就 阅读全文
摘要:
一、本地事务 更多内容,前往 IT-BLOG 在计算机系统中,更多的是通过计算机控制事务,这是利用数据库本身的事务特性来实现的,因此叫数据库事务,由于应用主要靠关系型数据库来控制事务,而数据库通常和应用在同一个服务器,所以基于关系型数据库的事务又被称为本地事务。 数据库事务的四大特性:数据库在实现时 阅读全文