自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(25)
  • 资源 (1)
  • 收藏
  • 关注

原创 算法 动画算法 算法动画 动画原理——总体概览图

动画算法一https://visualgo.net/en动画算法二https://www.cs.usfca.edu/~galles/visualization/Algorithms.html动画算法三http://www.donghuasuanfa.com/

2020-06-19 19:08:13 2187 1

原创 知识点总结——总体概览图

知识点总结JAVAjava 基础java 多线程java 集合框架框架篇springmybatisJAVAjava 基础java 多线程java 集合框架框架篇springmybatis

2019-05-13 07:44:58 543

原创 算法——图——bsf 广度优先搜索算法 (Breadth First Search)

广度优先搜索(BFS)是一种重要的图遍历算法,用于在横向运动中搜索图的所有顶点。它从一个给定的顶点开始,在进入下一个级别之前访问它的所有邻居。BFS的时间复杂度取决于图中顶点和边的数量。文章中使用的动画网站地址:限 pc:广度优先算法pc=bfs。

2023-11-13 11:02:22 403

原创 算法——字符串匹配算法——BM(Boyer-Moore) 算法

算法——字符串匹配算法——BM(Boyer-Moore) 算法

2023-06-20 14:31:17 895

原创 算法——分布式——一致性哈希、一致性hash图解动画

一致性哈希算法在1997年由麻省理工学院提出,是一种特殊的哈希算法,目的是解决分布式缓存的问题。在移除或者添加一个服务器时,能够尽可能小地改变已存在的服务请求与处理请求服务器之间的映射关系。一致性哈希解决了简单哈希算法在分布式哈希表( Distributed Hash Table,DHT) 中存在的动态伸缩等问题。整体流程大致分为三步。一:生成Hash环:首先,对存储节点的哈希值进行计算,其将存储空间抽象为一个环,将存储节点配置到环上。环上所有的节点都有一个值。

2023-04-26 17:03:22 858

原创 算法——垃圾回收算法——标记清除

标记清除

2023-01-29 11:53:12 533

原创 算法——排序——堆排序图解动画

堆排序

2022-01-14 12:57:28 814 2

原创 算法——过期淘汰算法——LRU和LFU

https://www.infoq.cn/article/Hrzk0oOst_C1WOfV7jlh?utm_source=related_read&utm_medium=article

2021-12-03 09:39:42 314

原创 Java——多线程——synchronized

redis 串行, 多路复用redis 协议Redis–集群–主从模式–哨兵模式

2021-11-22 17:51:30 138

原创 Java——框架——Java集合框架(持续更新)

JAVA集合框架实现类线程安全ArrayList否LinkList否Vector是

2021-11-02 12:03:01 181 1

原创 算法——对称加密——AES(Rijndael)

AES-Rijndael简介数据处理加密过程SubBytes(字节代换)ShiftRows(行移位)MixColumns(列混淆)AddRoundKey(加轮密钥)简介数据处理加密过程SubBytes(字节代换)sbox如下图 :替换过程如下:ShiftRows(行移位)第一行不变第二行循环左移1个字节第三行循环左移2个字节第四行循环左移3个字节MixColumns(列混淆)AddRoundKey(加轮密钥)...

2021-08-25 22:47:42 2909

原创 算法——机器学习——无监督学习—— K均值(K-means)图解动画

快速排序简介代码示例排序过程时间复杂度最差时间复杂度最优时间复杂度 && 平均时间复杂度空间复杂度稳定性简介        k均值聚类算法(k-means clustering algorithm)是一种迭代求解的聚类分析算法,其步骤是,预将数据分为K组,则随机选取K个对象作为初始的聚类中心,然后计算每个对象与各个种子聚类中心之间的距离,把每个对象分配给距离它最近的聚类中心。聚类中心以及分配给它们的对象就代表

2021-08-14 23:17:06 1773 1

原创 算法——排序——快速排序图解动画

快速排序简介代码示例排序过程时间复杂度最差时间复杂度最优时间复杂度 && 平均时间复杂度空间复杂度稳定性简介        快速排序是二分法排序。首先会选择一个基准元素,然后将基准值以外的元素分为[比基准值小]和[比基准值大]两个类别。整体数组为[比基准值小]基准元素[比基准值大]的结构。        然后再对两个[]中的元素

2021-07-08 09:17:13 1727 6

原创 算法——排序——归并排序图解动画

归并排序简介代码示例排序过程时间复杂度空间复杂度稳定性简介归并排序分为两部分:分解,合并。分解:归并算法会把数组分成两个长度相同的子数组,直到无法再分割,每个数组只有一个元素。此过程不消耗时间资源。对应的时间复杂度为O(1)。合并:首先比较两个数组内的各个元素大小,然后根据比较结果将两个数组合并成一个有序数组。此过程会将每行的所有的子数组内的所有元素进行一次比较合并,所以完成一行的归并操作所对应的时间复杂度为O(N)。分解元素时采用的是二分法对半分割,所以数组被分解为log2n次,即8个元素的数组

2021-07-06 08:44:21 1145

原创 算法——排序——插入排序图解动画

插入排序简介代码示例排序过程时间复杂度最差时间复杂度&平均时间复杂度最优时间复杂度空间复杂度稳定性简介插入排序,一般也被称为直接插入排序。对于少量元素的排序,它是一个有效的算法。插入排序是一种最简单的排序方法,它的基本思想是将一个记录插入到已经排好序的有序表中,从而一个新的、记录数增1的有序表。在其实现过程使用双层循环,外层循环对除了第一个元素之外的所有元素,内层循环对当前元素前面有序表进行待插入位置查找,并进行移动。文章中使用的动画网站地址,限 pc: 排序算法动画http://www.d

2021-06-29 08:14:51 565

原创 算法——排序——选择排序图解动画

选择排序简介代码示例排序过程时间复杂度最差时间复杂度&平均时间复杂度最优时间复杂度空间复杂度稳定性简介选择排序(Selection Sort),它的工作原理是:第一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后再从剩余的未排序元素中寻找到最小(大)元素,然后放到已排序的序列的末尾。以此类推,直到全部待排序的数据元素的个数为零。选择排序是不稳定的排序方法。文章中使用的动画网站地址,限 pc: 排序算法动画http://www.donghuasuanfa.com/

2021-06-28 09:07:30 358

原创 算法——排序——冒泡排序图解动画

简介冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。以升序为例。顺序轮序数组内元素。依次比较两个相邻的元素,如果顺序错误就交换位置。每轮遍历后右侧元素为最大值。共进行n轮轮序,最终排序完成。排序过程时间复杂度最差时间复杂度平均时间复杂度最优时间复杂度O(N2) O(N^2) O(N2)O(N2) O(N^2) O(N2)O(N) O(N) O(N)空间复杂度空间复杂度: O(1)...

2021-06-27 17:18:26 1496

原创 计算机基础——互联网系统高可用性总结

多年 To C系统开发维护经验,负责系统不能出半点差错。如果出问题,运气好的只是绩效问题和跨部门修复大量上下游数据。运气不好的恐怕要被祭天。常在河边走,哪有不湿鞋。但在一个地方湿鞋就不好了。所以平时总结一些经验,防止不重复再同一个地方湿鞋。 同时也偶尔看看别人如何湿的鞋,防止自己在相同地方湿鞋。

2021-02-04 09:47:42 359 2

原创 JAVA——基础知识——java线程池图解动画

线程池简介线程池示例文章中使用的动画网站地址: 线程池动画http://www.donghuasuanfa.com/jvm/threadPool/threadPoolPortal线程池目的和优势降低系统资源消耗,通过重用已存在的线程,降低线程创建和销毁造成的消耗。提高系统响应速度,当有任务到达时,通过复用已存在的线程,无需等待新线程的创建便能立即执行。线程池结构线程池共分为5部分。分别为核心线程池,阻塞队列,最大线程池,worker,拒绝策略。结构如下图1-1所示。核心线程池阻塞队

2020-12-17 07:56:43 427 1

原创 数据结构——树——二叉树图解动画

文章目录二叉树简介二叉树遍历前序遍历中序遍历后序遍历层序遍历二叉树操作二叉树插入节点二叉树删除节点二叉树简介在计算机科学中,二叉树是每个结点最多有两个子树的树结构。通常子树被称作“左子树”(left subtree)和“右子树”(right subtree)。二叉树常被用于实现二叉查找树和二叉堆。一棵深度为k,且有2^k-1个结点的二叉树,称为满二叉树。这种树的特点是每一层上的结点数都是最大结点数。而在一棵二叉树中,除最后一层外,若其余层都是满的,并且或者最后一层是满的,或者是在右边缺少连续若干结点,

2020-06-04 07:14:15 2003 3

原创 信息论——熵——相对熵

相对熵:相对熵:又称KL散度(Kullback–Leibler divergence),是描述俩个概率分布P和Q差异的一种方法。公式:DKL(P||Q)=−∑iP(i)logQ(i)P(i)DKL(P||Q)=−∑iP(i)logQ(i)P(i)D_{KL}(P||Q)=-\sum_iP(i)log\frac{Q(i)}{P(i)} DKL(P||Q)=∑iP(i)logP(i)...

2018-03-28 07:24:44 2140

原创 信息论——熵——信息熵

信息熵:信息熵:又被称为香农熵,因为是香农将人力学的熵引入到信息论。公式:H(X)=−∑i=1np(xi)log2p(xi)H(X)=−∑i=1np(xi)log2p(xi)H(X)=-\sum_{i=1}^n p(x_i)log_2p(x_i) 注:因为概率为小数,所以负号的目的是将log运算的结果变为正数。 或者 H(X)=∑i=1np(xi)log2p(1xi)H(X)=∑...

2018-03-27 08:53:48 1562

原创 信息论——熵——交叉熵

交叉熵:交叉熵:主要用于度量两个概率分布间的差异性,交叉熵是表示两个概率分布p、q,其中p表示真实概率,q表示非真实概率。公式:H(p,q)=∑ipilog(1qi)H(p,q)=\sum_{i} p_ilog(\frac{1}{q_i})例:一支小组4个球队(a、b、c、d),出现的概率分别为pip_i=(12\frac{1}{2},14\frac{1}{4},18\frac{1}{8},18\f

2018-03-27 08:20:51 850

原创 分布式系统——提交数据,写数据功能设计方案

声明在系统功能完成几年后计划总结一下此方案,希望为别人提供一些参考价值。一次偶然发现以前早有大神发表过文章。中文版本未找到,英文看不太懂。猜测思路类似。可能是重复的造了个轮子。http://queue.acm.org/detail.cfm?id=1394128 如果文章中有错误或者表述不清的地方,请各位读者批评指正,多谢! 需求背景实现高可用的写数据功能。(订单,评论...

2018-03-21 07:03:02 1647

原创 数学基础概念——softmax函数

softmax函数函数描述,来自wiki:在数学,尤其是概率论和相关领域中,Softmax函数,或称归一化指数函数,是逻辑函数的一种推广。它能将一个含任意实数的K维的向量  的“压缩”到另一个K维实向量  中,使得每一个元素的范围都在之间,并且所有元素的和为1。函数公式,来自wiki:    for j = 1, …, K.示例:例(来自wiki):输入向量 [

2018-02-06 17:47:23 7625 1

C++编程金典(第3版)

C++编程金典(第3版),c++必备图书之一

2016-01-05

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除