自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

晓魏

~阳光很好 阳关很暗~

  • 博客(57)
  • 收藏
  • 关注

原创 zk的数据模型 &数据同步原理

zk的数据模型zk数据同步机制

2022-05-12 15:10:51 642

原创 zab(数据一致性协议)

zk选举

2022-05-12 11:53:01 989

原创 CAP理论和Base理论

1.CAP理论2.Base理论

2022-05-04 10:01:16 352

原创 多数元素(超级水王问题扩展)

给定一个长度为N的数组arr,和一个大于1的正整数K,如果有哪些数出现的次数大于N/K,就返回这些数要求:时间复杂度O(N) 额外空间复杂度O(K)思考:最多会有k-1个数

2022-04-20 22:13:15 366

原创 随机函数相关面试题详解

1.给你一个随机函数f,等概率的返回1-5的一个数组,这是你唯一可以使用的随机机制,如何实现等概率返回1-7中的一个数字2.给你一个随机函数,等概率返回a-b中的一个数字,这是你唯一可以使用的随机机制,如何等概率的返回c-d中的一个数字3.随机函数f,以p概率返回0,以1-p概率返回1,核心思想使用位运算1.对随机函数进行转化,目标是使能够产生0,1等概率2.确定目标有多少中可能性3.确定二进制数用长度...

2022-04-20 18:51:28 510

原创 数组子序列累加和求余数之后的最大值问题详解

给定一个非负的数组arr,和一个正数m,返回arr中所有子序列累加和对m求余数之后的最大值1.如果arr中每个数字不大,怎么做这道题?2.如果arr中m的值很小,怎么做这道题?3.如果arr的长度很短,但是每个arr中数字比较大并且m比较大?如何求解所有的子序列问题?...

2022-04-20 16:36:13 444

原创 字符串分类问题

如果两个字符串,所含有的字符种类完全一样,就算做一类,只有小写字母(a-z)组成的一批字符串,都放在字符类型的数组Stringp[] arr,返回arr中一共有多少类?长度:字符串的长度可以不一样,但是字符串的所含字母的类型个数必须一致“aa”,“a” 是一类,“baba”,“ba” 是一类1.计算每一个字符串的摘要2.放入到HashSet,HashSet.size()就是结果方式二:1.使用位运算来代替摘要,优化常数时间的套路:当看到算法题是(a-z)的小写字母的设定的时候,就知道hash表

2022-04-20 12:48:20 227

原创 滑动窗口技术-最大无重复字符问题(暴力,滑动窗口,动态规划)

返回一个字符中最大无重复字符的长度

2022-04-20 12:24:12 400

原创 滑动窗口技术-子串包含问题(顺序无关)

给定一个长度为m的aim的字符串,以及一个长度为n的字符串str,能否在str中找到一个长度为m的连续子串,这个子串刚好由aim的m字符构成,顺序无所谓,返回满足子串的起始位置,未找到返回-1

2022-04-20 11:45:37 323

原创 搜索二叉树后序遍历反序列化(常规思路(O(N^2)),二分思路o(n*O(N*lgN)))

1.根据二叉搜索树的后续遍历arr,序列化成一个树,并且返回头结点

2022-04-19 14:31:28 269

原创 机器人走路方法数(递归-动态规划)

1.递归揭发2.动态规划的揭发

2022-04-15 23:09:18 638

原创 经典n皇后的问题(递归-位运算进行优化)

1.递归解法2.扩展解法-使用位运算进行优化

2022-04-15 09:54:26 377

原创 博弈问题-轮流取牌(暴力递归,记忆化搜索,动态规划)

1.暴力递归2.记忆化搜索3.动态规划

2022-04-15 08:42:11 588

原创 线程池详解-常用线程池使用简介

1.常用线程池的特点2.特点以及应用

2022-04-11 15:02:50 493

原创 反转一个栈的结构(不使用额外的数据结构)

1.不使用额外空间进行逆序栈

2022-04-11 10:43:51 704

原创 shell编程基础-流程控制(if-else, 循环,定义函数)

1. if-else的判断格式 2. for/while循环的歌是 3. shell中函数的定义

2022-04-08 20:52:46 319

原创 shell编程-传递参数-运算符详解

1.shell脚本传递参数2.shell运算符详解

2022-04-08 20:02:01 833

原创 shell编程-变量以及基本的数据类型

1.shell变量2.shell字符串3.shell数组

2022-04-08 17:46:22 435 1

原创 shell脚本实战-查询所有的文件和文件夹

1.shell遍历文件夹

2022-04-08 17:15:03 2844

原创 并发编程之LockSupport详解以及应用(公平锁)

1.LockSupport基本使用2.LockSupport原理3.LockSupport的应用公平锁

2022-04-02 16:25:15 514

原创 线程池详解-工作线程管理

线程池为了掌握线程的状态并维护线程的生命周期,设计线程池内的工作线程Workerworker线程private final class Worker extends AbstractQueuedSynchronizer implements Runnable { // work持有的线程 final Thread thread; //初始化任务可以为null; Runnable firstTask;}work线程执行任务的模型如下:线程池需要

2022-04-01 20:12:20 565

原创 矩阵技巧-旋转矩阵

1.旋转矩阵

2022-03-31 13:20:37 852

原创 线程池的-任务执行机制

线程池的任务执行机制任务调度任务调度是线程池的主要入口(execute(Runnable r)),接下来任务如何执行都是有这个阶段决定的;所有的任务调度都是有execute方法完成,检查现在线程池的运行状态,运行的线程数,运行策略,决定接下来执行的流程,是直接申请线程执行,还是缓冲到队列中执行,亦或是直接拒绝该任务;执行过程如下:1.首先检查线程池的运行状态,如果不是RUNNING,则直接拒绝,线程池要保证在RUNNING状态下执行任务2.如果workCount < corePoolSiz

2022-03-30 19:25:25 1767

原创 矩阵打印技巧-转圈打印矩阵

1.介绍转圈打印矩阵的宏观规律2.打印一层函数3.打印转圈函数

2022-03-30 12:14:25 418

原创 矩阵打印问题-zigzag打印矩阵

1.矩阵打印技巧2.打印斜线3.打印函数

2022-03-30 10:52:22 721

原创 简单的博弈问题:牛羊吃草问题(递归解法-暴力解法)

1.这是一道简单的博弈的问题2.暴力求解-3.动态规划求解

2022-03-29 18:46:00 1505

原创 线程池-生命周期详解

1.线程池的生命周期2.介绍的线程池运行状态和线程数量3.生命周期的流转

2022-03-29 10:52:14 2114

原创 线程池核心设计-总体设计

线程池的总体设计池化思想线程池的基本思想Java线程池是通过一种池化思想帮助我们管理线程而获取并发性的工具;线程池的核心实现类是ThreadPoolExecutor类,基于JDK1.8源码来分析java线程池的核心设计与实现;...

2022-03-28 13:05:55 337

原创 线程池-ExecutorService接口详解

1.ExecutorService接口介绍;2.管理终止的方法(shutdown shutdownNow)3.扩展Executor的submit方法(跟踪异步任务)

2022-03-27 14:30:37 476

原创 线程池之Executor接口详解(自定义序列化执行器示例)

1.Executor执行器的作用2.自定义序列化执行器的实现详解

2022-03-26 21:56:04 1162

原创 线程池的基本思想

1.什么是线程池2.线程池的优点3.线程池解决的问题

2022-03-26 18:42:11 603

原创 池化思想以及应用总结

1.什么是池化思想2.池化思想的应用示例3.池化思想的有优点

2022-03-26 18:30:15 1531

原创 并发编程-生产者消费者-阻塞队列版本-详解

1.并发编程-生产者消费者-阻塞队列版本-详解2.回顾synchronzied,Lock版本的多生者-多消费者

2022-03-25 20:52:30 585

原创 移动距离不超过k的几乎有序的数组进行排序(堆最优解 时间复杂度N*O(K))

1.堆算法的应用

2022-03-25 18:56:24 1082

原创 堆数据结构的实现详解(递归方式,非递归的方式)

1.堆数据结构的简单介绍;2.堆数据结构的递归的方式3.非递归的实现方式

2022-03-25 12:01:41 811

原创 判断链表是否是回文结构(反转链表方式,栈的方式,栈的优化方式,原地比较的方式)

1.对链表的回文结构判断进行总结2.逆序链表方式 空间复杂度O(n)3.栈的方式 空间复杂度O(n)4.栈的方式进行优化 空间复杂度O(n)5.原地比较的方式 空间复杂度O(1)

2022-03-24 19:28:19 1376

原创 快慢指针-链表中点-算法题练习(不晕,算我输)

快慢指针-在链表中点算法的应用1.其实主要考察的是边界条件确定;2.各种初始化条件的

2022-03-23 16:52:43 376 2

原创 寻找链表的交叉点的总结(三种方式实现)

对寻找公共链表的总结1.hashSet2.先走K步3.有点像快慢指针思想

2022-03-22 17:08:09 2261

原创 并发编程-多生产-多消费-总结以及最终版本(生产一组,消费一组)

1.生产者-消费者模型 synchronized版本-Lock版本-LockCondition版本-最终版本2.扩展 生产一组,消费一族

2022-03-21 12:32:11 413

原创 并发编程-Lock版本(基础-进阶)-多生产者-多消费者模型

Lock实现多生产者-多消费者模型简单介绍一下Lock:Lock接口的出现替代了同步代码块或者同步函数,将同步的隐式锁操作变成显式的锁操作;同时也可以更加灵活,可以一个锁上增加多组监视器;Condition接口的出现代替了Object中的wait(),notify(),notifyAll()方法,将这些监视器方法进行了封装,变成了Condition监视器对象;有方法await(),signal(),signalAll();为什么要提供监视器对象?为了实现精准唤醒,只唤醒对方的线程,在进阶版代码中将

2022-03-21 11:56:23 137

空空如也

空空如也

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

TA关注的人

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