自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(63)
  • 收藏
  • 关注

原创 力扣53:最大子序和

这题用动态规划…。

2022-03-15 22:45:22 7690

原创 redis,rabbitmq,springcloud的面试题/知识点

目录redis什么是redis?简述它的优缺点?什么是redis的主从复制,是如何实现的?什么是redis的哨兵模式?rabbitmq什么是消息中间件?rabbitmq的业务场景?服务解耦流量削封异步调用考虑定外卖支付成功的情况springcloud什么是springcloud?springcloud的核心组件有哪些?redis什么是redis?简述它的优缺点?Redis是一个key-value类型的内存数据库,整个数据库统统加载在内存当中进行操作,定期通过异步操作把数据库数据flush到硬盘中进行保

2021-12-24 14:08:09 1815

原创 how2J自学

网站网址我做的笔记在语雀的知识库。

2021-11-25 18:17:41 218

原创 面试题汇总

分块总纲参考文档时间安排java基础java中的基本类型[^1]java为什么可以跨平台运行?[^1]String是基本数据类型吗?可否写个类继承String[^1]Switch语句里面的条件可不可以是byte、long、String?使用时候还应注意什么?[^1]short s1=1;s1=s1+1;有什么错?short s1 = 1;s1+=1 有什么错?[^1]char为什么能存贮一个汉字?[^1]用最有效率的方法计算2乘以8[^1]final修饰变量时,变量是对象时,对象的值可不可以改变?静态变量和

2021-11-20 17:08:10 432

原创 IDEA上启动Tomcat时,修改jdk版本要看的地方

1.File–Project Structure。改SDK。然后看project setting的Project和Module2.setting里面的java compiler3.setting里面的importing4.tomcat的配置文件一定要注意,自己有没有手贱强行加jdk的版本!!还有就是在多个JDK之间切换的时候,要注意修改环境变量:classpath、path等等。...

2021-11-19 18:14:56 645

原创 力扣35:搜索插入位置

原题链接我愚蠢地忘记了O(log⁡n)O(\log n)O(logn)的表现是比O(n)O(n)O(n)更快的。用了暴力解,二分查找在大学学过了。class Solution { public int searchInsert(int[] nums, int target) { int n = nums.length; int left = 0, right = n - 1, ans = n; while (left <= right) {

2021-11-16 20:13:39 177

原创 2021-11-15

问:可以在一个.java文件中写两个类吗?答:一个java文件中可以有任意多个类,接口或是注解…但是只能有一个类是public的,而且这个类的名字要和文件同名,比如public类名为A则文件名就应当为A.java...

2021-11-15 09:45:14 364

原创 力扣28:实现 strStr()

这题对于初学者有多恶心呢?给你们看看我的败绩…

2021-11-12 21:02:25 4375

原创 力扣27:移除元素

原题链接class Solution { public int removeElement(int[] nums, int val) { if(nums==null || nums.length==0) return 0; int len = 0; for(int i = 0;i<nums.length;i++){ if(nums[i]==val) len++;

2021-11-12 11:19:31 4206

原创 力扣26:删除有序数组中的重复项

原题链接class Solution { public int removeDuplicates(int[] nums) { int firstDuplicateMark = 0; //数组已经是升序了 for (int i = 1;i < nums.length; i++) {//总是数组中要比较的前一个数 if(nums[i-1]==nums[i]) continue;

2021-11-11 09:48:47 4462

原创 第2章、算法基础

本章重点插入排序本章将要介绍一个贯穿本书的框架,后续的算法设计与分析都是在这个框架中进行的。这一部分内容基本上是独立的。首先,我们考察求解插入排序算法。我们定义一种对于已经编写过计算机程序的读者来说应该熟悉的"伪代码",并用它来表明我们将如何说明算法。然后,在说明了插入排序算法后,我们将证明该算法能正确地排序并分析其运行时间。这种分析引入了一种记号,该记号关注时间如何随着将被排序的项数而增加。在讨论完插入排序之后,我们引入用于算法设计的分治法并使用这种方法开发一个称为归并排序的算法。最后,我们分析归并排

2021-11-10 16:17:36 557

原创 力扣21:合并两个有序链表

原题链接说实话我看到这题吓到了,然后多少心态有点崩,连代码都没写就直接投降了。我确实有一个思路——不过这个思路也是我大学时听了《数据结构与算法》课听到的,大致简述如下:两张表同时遍历,然后将比较两个表的头节点,小的节点并入已排序的表中,大的节点继续保留;然后下一次遍历继续比较两个表的头节点。其实这个思路有了,只要努用心钻研一下就可以写出来了,这也告诉我们放弃心态实际上是不可取的。而官方解答也确实是这样的思路,采用了归并和迭代两种处理方法。...

2021-11-09 17:19:01 213

原创 三十三、加密

本集重点多层防御加密&解密凯撒加密替换加密移位加密列移位加密德国Enigma加密机1977年“数据加密标准”2001年“高级加密标准”密钥交换用颜色来举例“单向函数”和“密钥加密”的原理迪菲——赫尔曼密钥交换非对称加密非对称加密算法多层防御加密&解密凯撒加密替换加密移位加密列移位加密德国Enigma加密机1977年“数据加密标准”2001年“高级加密标准”密钥交换用颜色来举例“单向函数”和“密钥加密”的原理迪菲——赫尔曼密钥交换非对称加密非对称加密算法...

2021-11-08 17:39:13 3568

原创 第1章、算法在计算中的作用

本章重点算法算法算法(algorithm)就是任何良定义(明确表达无歧义)的计算过程。该过程取某个值或值的集合作为输入并产生某个值或值的集合作为输出。算法就是把输入转换为输出的计算步骤的一个序列。我们也可以把算法看成是用于求解良说明的计算问题的工具。一般来说,问题陈述说明了期望的输入/输出关系。算法则描述一个特定的计算过程来实现该输入/输出关系。
例如,我们可能需要把一个数列排成非递减序。实际上,这个问题经常出现,并且为引入许多标准的设计技术和分析工具提供了足够的理由。下面是我们关于排序问题的形式定义

2021-11-08 15:50:54 488

原创 力扣20:有效的括号

原题链接class Solution { Map<Character,Character> parenthesesPair = new HashMap<Character,Character>(){{ put(')','('); put(']','['); put('}','{'); }}; public boolean isValid(String s) { if (parenthesesPair.

2021-11-04 20:15:44 87

原创 三十二、黑客&攻击

本集重点社会工程学钓鱼假托木马上集讲了计算机安全的基础知识,包括各种原则和技术。本集主要讲黑客的相关知识,讨论一些入侵原理并给你一个大概概念。社会工程学黑客入侵的最常见方式不是通过技术,而是通过欺骗别人。这就叫做社会工程学(social engineering),就是一个人被欺骗以泄露自己的信息或者让另外的人配置电脑系统使之变得易于攻击。钓鱼最常见的攻击叫做网络钓鱼(phishing),例如银行发邮件叫你点击邮件里的链接并登陆账号,然后你会进入一个像官网的网站——而实际上是一个假的网站。当你输入

2021-11-04 09:55:18 8202

原创 力扣14:最长公共前缀

编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 “”。示例 1:输入:strs = [“flower”,“flow”,“flight”]输出:“fl”示例 2:输入:strs = [“dog”,“racecar”,“car”]输出:""解释:输入不存在公共前缀。提示:1 <= strs.length <= 2000 <= strs[i].length <= 200strs[i] 仅由小写英文字母组成...

2021-11-02 22:57:41 275

原创 力扣13:罗马数字转整数

class Solution { public int romanToInt(String s) { int num = 0; Deque<Character> sChar = new ArrayDeque<>(); int addNum = 0; //使用Deque可以避免使用charAt超出范围的异常 for (int i=0;i<s.length();i++){

2021-11-01 20:38:04 79

原创 我现在在看的....(更新于2021.11.19)

《如何变得有思想——一峰博客文集》,阮一峰著。正念减压疗法创始人–乔.卡巴金 的冥想大师课。老爷子是MIT的生物学博士,语气平和、和蔼慈祥。我看他的视频读后感在此(之后附上链接)。...

2021-10-31 11:44:56 100

原创 力扣9:回文数

原题链接给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121 是回文,而 123 不是。

2021-10-30 11:18:52 122

原创 三十一、计算机安全

本集重点保密性,完整性,可用性威胁模型身份验证的三种方式访问控制Bell LaPadula model隔离与沙盒保密性,完整性,可用性过去3集我们讲了计算机如何互连。让我们能够顺势跨全球沟通。威胁模型身份验证的三种方式访问控制Bell LaPadula model隔离与沙盒...

2021-10-29 09:19:48 3010

原创 力扣7:整数反转

这也太差劲了…这里说的正中下怀,因为我确实是用了字符串加try-catch的方法解决问题。收获需要对于32位二进制数的最大和最小值有一定把握。总的来说,偏数学一些。

2021-10-28 23:45:28 97

原创 力扣1:两数之和

原题链接给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。示例1:输入:nums = [2,7,11,15], target = 9输出:[0,1]解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。示例2:输入:nums = [3,2,4], target

2021-10-28 19:30:57 54

原创 下一个更大元素 I

今天第一次看leetcode的题目,炸了,第一题简单的就做不出来。我先把题目和解答摘抄下来,回家仔细分析。给你两个没有重复元素的数组 nums1 和 nums2 ,其中nums1 是 nums2 的子集。请你找出 nums1 中每个元素在 nums2 中的下一个比其大的值。nums1 中数字 x 的下一个更大元素是指 x 在 nums2 中对应位置的右边的第一个比 x 大的元素。如果不存在,对应位置输出 -1 。示例1:输入: nums1 = [4,1,2], nums2 = [1,3,4

2021-10-26 20:20:58 50

原创 在字符串中找出第一个只出现一次的字符

这道题好像出自《剑指offer》。我这本书还没有开始看,要找机会看看。在一个长为字符串中找到第一个只出现一次的字符,并返回它的位置, 如果没有则返回 -1(需要区分大小写).(从0开始计数)数据范围:字符串只有字母组成。要求:空间复杂度 O(N),时间复杂度 O(N)举例:输入 “google”,输出 4输入 “aa”,输出 -1这道题的一个前提基础知识就是要知道一些Collection和Map类常用方法的时间复杂度,参考Java集合类常用方法时间复杂度。还有根据这篇博客,String类

2021-10-26 01:08:58 2056 1

原创 三十、万维网

本集重点超链接URL-统一资源定位器前两集深入讨论了电线、信号、交换机、数据包、路由器以及协议,它们共同组成了互联网。接下来我们再往上抽象一层,讨论万维网(world wide web)。万维网和互联网(Internet)不是一回事。万维网在互联网之上运行,互联网之上还有Skype,Minecraft,Instagram等应用。互联网是传递数的管道,各种程序都会用,其中传输最多数据的程序就是万维网,分布在全球数百万个服务器上。我们可以用“浏览器”来访问万维网。这集我们会深入讲解万维网。超链接万维网的

2021-10-25 17:46:53 303

原创 第3章 链表速读

本章目录链表和链表节点的实现链表和链表节点的API总结链表提供了高效的节点重排能力,以及顺序性的节点访问方式,并且可以通过增删节点来灵活地调整链表的长度。 Redis构建了自己的链表实现。链表在Redis中的应用非常广泛,比如列表键(key对应的value是一个List结构1)的底层实现之一就是链表。当一个列表键包含了数量比较多的元素,又或者列表中包含的元素都是比较长的字符串时,Redis就会使用链表作为列表键的底层实现。 举个例子,以下展示的integers列表键包含了从1到1024共一千零二十四个整

2021-10-25 16:33:17 80

原创 java面试题汇总(未完成)

原文链接本文章仅作为记忆和背诵的途径本集重点java基础java中有哪些基本类型?java为什么能够过平台运行String是基本数据类型吗?我可不可以写个类继承于String?谈谈&和&&的区别?Switch语句里面的条件可不可以是byte、long、String?使用时候还应注意什么?short s1=1;s1=s1+1;有什么错?short s1 = 1;s1+=1 有什么错?SSM框架何为Spring Bean容器?Spring Bean容器与Spring IOC 容器有什

2021-10-23 11:07:03 69

原创 七、中央处理器

今天我们讲处理器。我们之前实现了一个ALU,可以接受二进制数字并执行计算;然后我们根据寄存器实现了一个内存,能够在不同地址存储数字。然后我们就可以使用ALU以及RAM建造CPU了。CPU负责执行程序。程序由一个个操作组成,这些操作叫做指令(Instruction),因为他们指示计算机去做什么。我们以微体系架构的视角来关注CPU的组成结构,也就是说,我们不会专注与具体怎么连接每一位每一位的一根根线,而是关注于每个模块之间数据怎么通信,功能怎么关联的问题。我们先获得一个RAM,假设它只有16个位置,每个位置

2021-10-22 08:43:42 101

原创 二十五、个人计算机革命

注意:本集以历史故事为主计算机到1970年代初时,各个组件的成本下降,个人计算机变得可以负担。这个转变中最有影响力的是单芯片CPU的出现。继承电路的进步也提供了低成本的固态存储器(solid-state memory) ,可以用计算机的RAM和ROM。将整台计算机做到一张电路板上成为可能。那时候也有便宜可靠的存储介质(storage)——比如磁带和软盘以及低成本的显示器。在1970s将上述4种原料混在一起就可以得到一个微型计算机(microcomputer),这是第一个低成本的、一个人专用的计算机。Al

2021-10-22 08:39:04 216

原创 二十四、冷战和消费主义

二战结束后,美苏冷战,美国政府往科学和工程学投入大量资金。计算机在战时(曼哈顿计划和破解纳粹通讯加密)已经证明了自身的价值,政府投入大量资源,各种项目也得以开展(ENIAC,EDVAC,Atlas,Whirlwind)。1950s事情开始发生变化,Univac1是第一台取得商业成功的电脑。不像ENIAC或Atlas,Univac1不是一台机器而是一种型号,一共有40台。计算机与以前的机器不一样,以前的机器增强人类的物理能力:卡车能带更多东西、自动织布机更快等等。而计算机增强的是人类智力。范内瓦·布什于19

2021-10-21 11:59:48 163

原创 二十三、屏幕&2D图形显示

下图是一个早期的图形计算机PDP-1,可以看到计算机、打字机和屏幕是分离的。当时的文本任务和图形任务是分开的,因为早期的屏幕无法显示清晰的文字,而用于跟踪程序的运行情况,比如寄存器的值。屏幕更多用于存储一些没必要打印的临时值。最早的显示技术是使用阴极射线管(Cathode Ray Tubes,CRT),原理是把电子发射到有磷光体涂层的屏幕上,电子撞击涂层时会发光几分之一秒。电子的路径可以使用磁场控制,屏幕内使用板子或线圈把电子引导到想要的位置。既然可以这样控制,就有两种方法绘制图形:引导电子束描

2021-10-21 11:47:35 269

原创 二十二、命令行界面

我们可以使用“输入输出设备(input & output devices)”让我们和计算机交互,它们在人类和机器间提供了界面,如今有整个学科专门研究这个,叫“人机交互”。早期机械计算设备用齿轮、旋钮和开关等机械结构来输入输出,这些就是交互界面。早期电子计算机(ENIAC)则使用一大堆机械面板和线来操作。输入的程序运行完毕想拿出数据时,一般是打印在纸上。到1950s,机械输入完全消失,打孔纸卡和磁带取而代之,但是输出仍然是打印到纸上,还有大量指示灯在运行中提供实时反馈。1950s前输入的概念很原始,

2021-10-21 11:00:21 1587

原创 二十一、压缩

压缩可以把数据占用的空间压得更小,用更少的bits表示数据。我们用上集的4像素*4像素图片作为例子。图像存成一长串的连续字节数据,由元数据+像素值组成,今天忽略元数据。每个像素的颜色有三原色的组合(红绿蓝)混合而成,每个颜色用一个字节存,数字范围0-255。这个图像有16个像素,每个像素3个字节,共48字节。压缩这48个字节的一种方法时减少重复信息,最简单的方法就叫做“游程编码”(run-length encoding),适合于经常出现相同值的文件。具体方法就是从多个连续的、相同的像素值中保留一个,然

2021-10-21 10:52:42 1007

原创 二十、文件系统

文件(file)是一整块有关系的数据。文件格式(file format)是一种存文件数据的模式,一个文件存储一般有现成标注,如jpeg和mp3。最简单的文件格式是文本文件(text files,txt),存储的是文字。就像所有其它文件,文本文件实际上只是一长串二进制数。解码这一长串二进制数的关键就是ASCii编码。另一个更加复杂的例子是波形(Wave)文件,也叫做WAV,存储音频数据。为了读取wav文件,我们需要一些信息,比如码率(bit rate)以及它是单声道还是立体声,这些信息属于数据的数据,叫做“元

2021-10-21 10:28:57 344

原创 十九、内存&存储介质

之前我们已经讲过内存,内存在断电之后存储的内容就会消失,所以内存叫**“易失性”存储器**(volatile memory)。存储器(Storage)和内存不同,写入存储器的数据——例如硬盘——数据会一尺存储着,断电也不会丢失,除非其被覆盖或者被删除。存储器是“非易失性”的,以前是易失性的存储速度快、非易失性的存储速度慢,现在这二者之间的差距逐渐缩小。最早的存储介质是打孔纸卡以及打孔纸带,纸卡不耗电且便宜耐用,但是读取慢而且只能写入一次(write-once)——因为打的孔无法轻易不上。对于存储临时值,

2021-10-21 09:11:42 689

原创 第6章 存储器层次结构 读后总结

目录存储技术存储器系统(memory system)是一个具有不同容量、成本和访问时间的存储(storage)设备的层次结构:CPU寄存器保存着最常用的数据靠近CPU的小的、快速的高速缓存存储器(cache memory)作为存储在相对慢速的主存储器(main memory,主存)中数据和指令子集的缓冲区域。主存暂时存放存储较大的慢速磁盘上的数据。而这些磁盘常常又作为存储在通过网络连接的其他机器的磁盘或磁带上的数据的缓冲区域。什么是局部性?指的是程序的设计能够倾向于一次又一次地访问相同的数

2021-10-21 09:10:25 113

原创 第五阶段笔记

文章目录随堂笔记课程安排(17到18天)开发环境常用地址Spring Cloud Netflixeureka高可用04调用02、03Zuul API 网关Hystrix dashboardVMware随堂笔记这是随堂笔记, 详细内容请参考在线笔记:https://blog.csdn.net/weixin_38305440课程安排(17到18天)Spring Cloud Netflix(6)RabbitMQ(2)分布式事务(3)RocketMQ(1)Docker(2)Elasticsea

2021-10-21 00:22:17 309

原创 第1章 引言速读

为了让本书的内容保持简单并且容易读懂,本书会尽量以高层次的角度来对Redis的实现 原理进行描述,如果读者只是对Redis的实现原理感兴趣,但并不想研究Redis的源代码,那 么阅读本书就足够了。如果读者打算深入了解Redis实现原理的底层细节,本书在RedisBook.com提供了一份带有详细注释的Redis源代码,读者可以先阅读本书对某一功能的介绍,然后再阅读该功能对应的实现代码,这有助于读者更快地读懂实现代码,也有助于读者更深入地了解该功能的实现原理。本书是基于Redis 2.9——也即是Redi

2021-10-21 00:21:58 51

原创 第2章 简单动态字符串速读

本章目录SDS的定义SDS与C字符串的区别常数复杂度获取字符串长度杜绝缓存区溢出减少修改字符串时带来的内存重分配次数Redis使用的是一种名为简单动态字符串(simple dynamic string,SDS)的抽象类型作为默认的字符串表示。在redis中,c字符串只会作为字符串字面量(string literal)用在一些无须对字符串值 进行修改的地方,比如打印日志。当Redis需要的不仅仅是一个字符串字面量,而是一个可以被修改的字符串值时,Redis 就会使用SDS来表示字符串值。在redis的数据库

2021-10-21 00:21:39 73

空空如也

空空如也

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

TA关注的人

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