- 博客(15)
- 收藏
- 关注
原创 Excel列表名称
思路:转换成26进制,新的对应关系是原先对应关系-1得到,所以在每次操作的时候,都要让columnNumber-1,得到新的对应关系。给你一个整数 columnNumber ,返回它在 Excel 表中相对应的列名称。输入:columnNumber = 2147483647。输入:columnNumber = 701。输入:columnNumber = 28。输入:columnNumber = 1。输出:“FXSHRXW”
2023-04-24 10:21:30 332
原创 leetCode--零钱兑换算法题
解决思路:取总金额减去不同面额的硬币所需的最小次数,如实例1,取总金额min{(11-1),(11-2),(11-5)}+1;计算并返回可以凑成总金额所需的 最少的硬币个数。如果没有任何一种硬币组合能组成总金额,返回 -1。给你一个整数数组 coins ,表示不同面额的硬币;输入:coins = [1, 2, 5], amount = 11。输入:coins = [2], amount = 3。输入:coins = [1], amount = 0。解释:11 = 5 + 5 + 1。
2023-04-20 15:52:19 709
原创 leetCode--one
这样我们创建一个哈希表,对于每一个 x,我们首先查询哈希表中是否存在 target - x,如果存在,直接返回当前元素位置i和target-x的所在位置,如果不存在,将 x 插入到哈希表中,即可保证不会让 x 和自己匹配。时间复杂度为O(n)。给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。最容易想到的方法是枚举数组中的每一个数 x,寻找数组中是否存在 target - x。时间复杂度为O(n^2)
2023-04-20 14:47:27 150
原创 redis高阶篇
1、Redis为什么这么快?1、基于内存存储实现我们都知道内存读写是比在磁盘读写快很多的,Redis基于内存存储实现的数据库,相对于数据存在磁盘的Mysql数据库,省去磁盘I/O的消耗。2、高效的数据结构redis的数据结构是专门设计的,这些简单的数据的查找和操作的复杂度大部分都是O(1),因此性能快。3、单线程省去了线程切换上下文带来的时间开销(Redis6.0的多线程是用来处理网络I/O这部分,充分利用CPU资源,减少网络I/O阻塞带来的性能损耗。)4、IO多路复用redis用IO多路
2023-04-12 14:36:22 294
原创 MySQL经典题
一般的数据库都是采用b树或者b+树来实现存储结构的,b树是一种多路平衡树,他的整体高度相比二叉树会矮很多,对于数据库来说,所有的数据都是存储在磁盘上的,而磁盘io效率是很低的,特别是在随机磁盘io的一个情况下效率更低,那么树的高度就能够决定磁盘io的一个次数,磁盘io次数越少对性能的提升就越大。1、在业务复杂的系统中,有可能存在锁表的场景,导致暂时不能使用读的服务,那么就很影响运行中的业务,使用主从复制,让主库负责写,从库负责读,这样即使出现了锁表的情景,通过读从都也可以保证其他 业务的正常运作。
2022-12-01 14:36:48 403
原创 dubbo
1、Dubbo基础知识1、什么是分布式系统? 分布式系统是若干个独立计算机的集合,这些计算机对于用户来说就像单个相关系统。分布式系统是建立在网络之上的软件系统。2、分布式的发展演练3、RPC 简单的理解就是,RPC是指远程过程调用,也就是说两台服务器A,B,一个应用部署在A服务器上,想要调用B服务器上应用提供的函数或方法,由于不在一个内存空间,不能直接调用,需要通过网络来表达调用的语义和传达调用的数据。
2021-05-08 16:30:51 218 2
原创 JMM
JMM(java内存模型) Java内存模型(即Java Memory Model,简称JMM)本身是一种抽象的概念,并不真实存在,它描述的是一组规则或规范,通过这组规范定义了程序中各个变量(包括实例字段,静态字段和构成数组对象的元素)的访问方式。由于JVM运行程序的实体是线程,而每个线程创建时JVM都会为其创建一个工作内存(有些地方称为栈空间),用于存储线程私有的数据,而Java内存模型中规定所有变量都存储在主内存,主内存是共享内存区域,所有线程都可以访问,但线程对变量的操作(读取赋值等)必须在工作
2021-05-08 16:21:27 105
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人