自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 令牌桶算法源码

2021-09-20 22:10:49 195

原创 MySql 复习笔记

7MySQL 复习笔记,对之前看书和视频进行总结进行分类,同时使用⭐️标记重点程度,使用????表示遗忘程度,随着面试会逐渐更新文章目录1.MySQL引擎1.1 InnoDB 和 MyISAM 的区别⭐️⭐️⭐️⭐️⭐️⭐️❤️????2.索引原理以及数据结构2.1 ⼆叉搜索树(binary serach tree)⭐️2.2 平衡二叉查找树(AVL)⭐️⭐️2.3 B 树(B-树)⭐️2.4 B+树⭐️⭐️⭐️⭐️⭐️⭐️❤️2.6 B +树相比 B树的优势⭐️⭐️⭐️⭐️2.7 B+ 树与红黑树比较

2021-09-17 10:51:19 295

原创 Mysql题目练习

MySQL总结1.MySQl 执行顺序from join on where group by count,max,sum having select distinct order by limit1、FROM table1 left join table2 on 将table1和table2中的数据产生笛卡尔积,生成Temp12、JOIN table2 所以先是确定表,再确定关联条件3、ON table1.column = table2.columu 确定表的绑定条件 由Temp

2021-08-10 14:51:40 371

原创 操作系统总结

结合现代操作系统和优秀的博客进行总结文章目录1.进程管理1.1进程和线程的区别⭐️⭐️3️⃣❤️1.2线程和协程和进程区别1.3 进程间的通信方式有哪些⭐️⭐️????1.4 进程调度算法1.5 进程同步方法2.linux 常见的命令2.1测试两台机器能够连通的命令,什么协议实现?3.IO 管理3.1 数据输入操作管理3.2 IO 模型3.2.2 阻塞式IO(BIO)3.2.3 非阻塞式IO(NIO)3.2.4 多路复用 IO⭐️❤️3.2.4.1 select和poll模型3.2.4.2 epoll模

2021-08-10 14:36:34 130

原创 Redis学习笔记

Redis学习笔记1.持久化1.1 redis 的持久化机制(如何保证 redis 挂掉再重启可以进行数据恢复)Redis 是内存型数据库,为了保证数据在断电后不会丢失,需要将内存中的数据持久化到硬盘上。RDB 方式:(默认)将某一时刻所有的 redis 内存数据生成快照映射到磁盘.如果系统发生故障,将会丢失最后一次创建快照之后的数据。AOF 方式(Append Only File): appendonly yes(命令开启)开启 AOF 持久化后每执行一条会更改 Redis

2021-07-26 10:26:06 91

原创 计算机网络学习总结

计算机网络复习笔记本文结合计算机网络自顶向下,中科大郑烇老师网课,b 站 up 主湖科大教书匠(讲的太好了)以及优秀的博客(CS-Notes)和公众号进行总结,从问题出发,同时不破坏计算机网络得整体结结构,对问题分类总结,方便记忆1.计算机网络分层模型1.1计算机分层模型⭐️[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bhaffciJ-1620353895627)(/Users/yazhouheilong/Library/Application Support/

2021-05-07 10:18:59 394 2

原创 MySQL复习总结

MySQL 复习笔记,对面试题进行分类,同时使用⭐️标记重点程度,使用????表示遗忘程度,随着面试会逐渐更新文章目录1.MySQL引擎1.1 InnoDB 和 MyISAM 的区别⭐️⭐️2.索引及其原理2.1 ⼆叉搜索树(binary serach tree)⭐️2.2 平衡二叉查找树(AVL)⭐️2.3 B 树(B-树)⭐️2.4 B+树⭐️2.5 查询索引为 col = 30 的例子⭐️2.6 B +树相比 B树的优势⭐️2.7 B+ 树与红黑树比较⭐️2.8 聚集索引和非聚集索引区别⭐️3.M

2021-04-26 16:27:29 139

原创 JVM 复习总结

JVM复习笔记参考Java虚拟机,优秀博客,以及经典面试题对面试题进行了按章归纳总结,采取尽量好记忆的方式进行总结,同时使用⭐️代表它的重要程度文章目录1.Java内存区域与内存溢出异常1.1 介绍JVM的内存区域(运行时数据区)⭐️⭐️1.2 简述永久代和元空间⭐️⭐️1.2.1 为什么要用元空间代替永久代2.垃圾收集器与内存分配策略2.1 如何判断对象是否死亡⭐️⭐️????2.1.1**强 软 弱 虚 引用**2.2 垃圾回收算法⭐️⭐️2.3 常见的垃圾收集器有哪些⭐️⭐️2.4 内存分配

2021-04-24 09:55:07 578 3

原创 java 基础知识复习总结笔记

对java基础面试题进行总结,将面试题分类型,分重点,以及提供了答题的思路文章目录1.java语言基础1.java 语言有什么特点2. java和c++区别3. Oracle JDK 和 OpenJDK 的对⽐4. 关于 JVM JDK 和 JRE 最详细通俗的解答5. 八种数据类型字节大小6. 自动拆箱自动装箱⭐️7.java中方法的参数传递机制⭐️8. == 和equals 以及HashCode8.1 == 和 equals 区别8.2 hashCode的作用8.3 **hashCode() 和 .

2021-04-20 21:47:45 669

原创 九.多线程复习笔记之线程池

并发复习笔记之第九章(多线程并发之线程池)想看后续请持续关注以下来源有书籍 深入理解 JVM 虚拟机,java 并发编程的艺术,深入浅出多线程,阿里巴巴技术手册以及一些公众号 CS-Notes,JavaGuide,以及一些大厂高频面试题吐血总结,以及狂神说视频笔记,目的在于通过问题来复习整个多线程,已下是全部章节,觉得不错点个赞评论收藏三连一下,您的鼓励就是我继续创作的最大动力!!!!一.多线程基础(面向面试总结超详细)二.多线程基础之 volatile(面向面试吐血总结)三.多线程基础之syn

2021-04-16 18:07:53 156

原创 八.并发复习笔记之并发工具类countDownLatch

并发复习笔记之第八章(并发工具类countDownLatch)想看后续请持续关注以下来源有书籍 深入理解 JVM 虚拟机,java 并发编程的艺术,深入浅出多线程,阿里巴巴技术手册以及一些公众号 CS-Notes,JavaGuide,以及一些大厂高频面试题吐血总结,以及狂神说视频笔记,目的在于通过问题来复习整个多线程,已下是全部章节,觉得不错点个赞评论收藏三连一下,您的鼓励就是我继续创作的最大动力!!!!一.多线程基础(面向面试总结超详细)二.多线程基础之 volatile(面向面试吐血总结)三

2021-04-16 18:05:49 157 1

原创 七.原子类和 CAS

并发复习笔记之第七章(原子类和 CAS)想看后续请持续关注以下来源有书籍 深入理解 JVM 虚拟机,java 并发编程的艺术,深入浅出多线程,阿里巴巴技术手册以及一些公众号 CS-Notes,JavaGuide,以及一些大厂高频面试题吐血总结,以及狂神说视频笔记,目的在于通过问题来复习整个多线程,已下是全部章节,觉得不错点个赞评论收藏三连一下,您的鼓励就是我继续创作的最大动力!!!!一.多线程基础(面向面试总结超详细)二.多线程基础之 volatile(面向面试吐血总结)三.多线程基础之sync

2021-04-15 16:40:08 155 1

原创 六 多线程之并发容器

并发复习笔记之第六章(多线程之并发容器)想看后续请持续关注以下来源有书籍 深入理解 JVM 虚拟机,java 并发编程的艺术,深入浅出多线程,阿里巴巴技术手册以及一些公众号 CS-Notes,JavaGuide,以及一些大厂高频面试题吐血总结,以及狂神说视频笔记,目的在于通过问题来复习整个多线程,已下是全部章节,觉得不错点个赞评论收藏三连一下,您的鼓励就是我继续创作的最大动力!!!!一.多线程基础(面向面试总结超详细)二.多线程基础之 volatile(面向面试吐血总结)三.多线程基础之sync

2021-04-14 18:53:13 192 2

原创 ConcurrentHashMap源码阅读总结

容器复习笔记本文结合优秀博客,jdk 源码,在源码上进行逐行注释,全面整体分析 hashmap1.7,1.8,以及ConcurrentHashMap 1.7,1.8,给出其代码的框图已经整体的代码流程总结,在最后还会结合大厂真实面试题进行总结,对比1.7,1.8版本的区别,一文打通容器,秒杀面试官,总体目录如下文章目录4. java7 ConcurrentHashMap4.1 基本属性以及整体结构4.2 初始化4.3 put 过程4.3.1 定位 segment4.3.2 定位 segment 内部

2021-04-12 15:23:10 189 2

原创 hashmap 源码1.8和1.7学习总结

容器复习笔记本文结合优秀博客,jdk 源码,在源码上进行逐行注释,全面整体分析 hashmap1.7,1.8,以及ConcurrentHashMap 1.7,1.8,给出其代码的框图已经整体的代码流程总结,在最后还会结合大厂真实面试题进行总结,对比1.7,1.8版本的区别,一文打通容器,秒杀面试官,总体目录如下文章目录1. java7 hashmap1.1 基本属性以及整体概括1.2 put 过程分析1.2.1 put 过程大致流程图1.2.2 初始化过程1.2.3 计算 key 对应 index1

2021-03-22 19:06:41 342 9

原创 五.多线程进阶之各种锁总结

5. java 中的锁5.1 Lock接口5.1.1 lock 与 synchronize 区别lock : 了锁获取与释放的可操作性、可中断的获取锁以 及超时获取锁,可以设置为公平锁synchroized : 隐式的释放锁,不可以中断获取和超时获取,不可以设置为公平锁5.2 AQS 同步队列5.2.1 AQS 是什么AQS是 AbstractQueuedSynchronizer的简称,即 抽象队列同步器 ,从字⾯意思上理解:5.2.2 AQS 是用来干什么的?​ 那AQS 有什么⽤呢

2021-03-19 20:10:33 158 1

原创 四.多线程使用及其通信

并发复习笔记之第四章(多线程使用及其通信)想看后续请持续关注以下来源有书籍 深入理解 JVM 虚拟机,java 并发编程的艺术,深入浅出多线程,阿里巴巴技术手册以及一些公众号 CS-Notes,JavaGuide,以及一些打大厂高频面试题吐血总结,以及狂神说视频笔记,目的在于通过问题来复习整个多线程文章目录4.多线程的使用4.1 多线程的四种创建方法4.1.1 实现接口和直接继承Thread类哪个好?4.1.2 Runnable实现和 Callable 实现有什么区别4.2 线程间的通信4.2.1

2021-03-18 15:37:59 152 1

原创 三.多线程基础之synchronized

并发复习笔记之第三章(多线程基础之synchronized )想看后续请持续关注以下来源有书籍 深入理解 JVM 虚拟机,java 并发编程的艺术,深入浅出多线程,阿里巴巴技术手册以及一些公众号 CS-Notes,JavaGuide,以及一些打大厂高频面试题吐血总结,以及狂神说视频笔记,目的在于通过问题来复习整个多线程文章目录3. 多线程之 synchronized3.1 synchrocized 关键字目的是什么?3.2 synchroized 你是如何使用的3.3 synchrozied 的实现

2021-03-17 16:12:13 182 2

原创 二.多线程基础之 volatile

文章目录2 多线程基础之 volatile 以及 JMM2.1 JVM 内存模型2.1 volatile 的作用是什么2.2 volatile 可以保证线程安全吗,为什么?2.3 volatile 可见性 是什么,为什么可以保证可见性?2.4 volatile 能保证有序性吗? 如何保证的?2.5 volitaile 可以保证原子性吗? 如何保证原子性?2 多线程基础之 volatile 以及 JMM必须要放一张 内存模型图 图找不到自己 baidu 一个把2.1 JVM 内存模型Java的并发采用

2021-03-17 16:09:30 1312 10

原创 一.多线程基础

并发复习笔记以下来源有书籍 深入理解 JVM 虚拟机,java 并发编程的艺术,深入浅出多线程,阿里巴巴技术手册以及一些公众号 CS-Notes,JavaGuide,以及一些面试题集,以及狂神说视频笔记,目的在于通过问题来复习整个多线程1.1 上下文切换1.1.1 上下文切换是什么?CPU通过时间片分配算法来循环执行任务,当前任务执行一个时间片后会切换到下一个 任务。但是,在切换前会保存上一个任务的状态,以便下次切换回这个任务时,可以再加载这 个任务的状态。所以任务从保存到再加载的过程就是一次上

2021-03-15 13:47:26 197 1

原创 java LIst 和ArrayList区别和联系详解

文章目录定义使用方法使用区别延伸List的接口及其实现类的主要方法定义List是一个接口,Arraylist是List的实现类。因此list不能自己定义一个对象,只能进行引用。List list1 = new List();//这种定义语句就是错误的List list2 = new ArrayList();//正确ArrayList list3 = new ArrayList();//正确使用方法以下两种定义都正确,区别在于前者只能使用List和Arraylist的公共方法,后者可以使

2020-11-16 11:17:49 791

原创 2021美团笔试秋招后台高清

2020-09-27 10:21:44 89

原创 2021华为互联网秋招笔试高清无码

2020-09-26 19:37:07 1123

原创 2021秋招互联网京东c++/java真题

2020-09-17 19:57:36 101

原创 2021秋招互联网深信服c++/java真题

2021秋招互联网深信服

2020-09-17 19:55:00 232

原创 2021秋招互联网百度c++/java真题

21互联网百度c++/java真题

2020-09-14 21:07:26 71

原创 2021秋招小红书真题

21小红书真题

2020-09-12 12:19:05 207

原创 2021携程秋招互联网笔试真题

21携程真题

2020-09-12 10:43:55 252

原创 21小米秋招真题

21小米真题![在这里插

2020-09-12 10:37:34 97

原创 62.不同路径 c++

62.不同路径写在前面,小白从零刷题,在解答会写出思路,正确答案,以及所有使用到的语法和知识点1.dp 5如何想到?有多少种路径,典型的动态规划路径问题解题步骤字问题:求最后的步骤等于上面那一格和左面一格的步骤总数转移方程:f[i][j]=f[i-1][j]+f[i][j-1]初始条件f[0][0]=1,最上面一行和左面一行为1计算顺序是从左到右从上到下符合动态规划计算顺序class Solution {public: int uniquePaths(int

2020-08-24 12:26:44 234

原创 换硬币 c++

换硬币写在前面,小白从零刷题,在解答会写出思路,正确答案,以及所有使用到的语法和知识点1.dp如何想到?求最小值解题步骤456class Solution {public: int coinChange(vector<int> &coins, int amount) { const int INF = 0x3f3f3f3f;//定义INF为一个极大值 vector<int>dp(amount+1,INF

2020-08-24 11:46:27 1136

原创 122. 买卖股票的最佳时机 II c++

122. 买卖股票的最佳时机 II写在前面,小白从零刷题,在解答会写出思路,正确答案,以及所有使用到的语法和知识点1.贪心 5如何想到?想了几个例子,然后实际验证,想到了这个方法解题步骤只要后一天的股票价格大于前一天的价格那么就累加class Solution {public: int maxProfit(vector<int>& prices) { if(prices.size()==0)return 0; in

2020-08-24 11:45:33 92

原创 121. 买卖股票的最佳时机 c++

121. 买卖股票的最佳时机写在前面,小白从零刷题,在解答会写出思路,正确答案,以及所有使用到的语法和知识点1.dp 5如何想到?最大值关键词,之后的状态和之前有关解题步骤判断当前的值与之前数组内的最小值和上一个状态的比较class Solution {public: int maxProfit(vector<int>& prices) { if(prices.size()==0)return 0; int min

2020-08-24 11:44:46 94

原创 96.不同的二叉搜索树 c++

96.不同的二叉搜索树写在前面,小白从零刷题,在解答会写出思路,正确答案,以及所有使用到的语法和知识点1.方法 3如何想到?思路就是利用二叉搜索树的特点,对于n,假设n个节点存在二叉搜索树的种类为G(n),那么假设1为根节点,左子树根节点为0,右子树根节点为G(n-1),假设2为根节点,那么右子树根节点为G(n-2),所以推导得出G(n)=G(0)xG(n-1)…G(n-1)* G(0)解题步骤设置一个数组,已知数组的大小,通过公式求得class Solution {pub

2020-08-24 11:44:13 221

原创 最大子序和 c++

最大子序和写在前面,小白从零刷题,在解答会写出思路,正确答案,以及所有使用到的语法和知识点1.方法 1如何想到?包含最大,最多类字眼可能是动态规划解题步骤分解问题,从小问题到大问题,举例子从一开始入手,先从例子中找出应该的状态方程class Solution {public: int maxSubArray(vector<int>& nums) { int a=nums[0],b,temp,ans=nums[0];

2020-08-24 11:43:42 190

原创 20. 有效的括号 c++

20. 有效的括号写在前面,小白从零刷题,在解答会写出思路,正确答案,以及所有使用到的语法和知识点1.栈 3解题步骤将所有指定的括号放在一个unorderd_map中去,制定好对应的key-value。然后为true的情况就是能把内部的括号依次对应删除,那么就是有效的括号。为false的情况就是括号内部不对应,或者括号左右不匹配class Solution {public: bool isValid(string s) { unordered_map<

2020-08-24 11:43:07 199

原创 14.最长公共前缀 c++

14.最长公共前缀写在前面,小白从零刷题,在解答会写出思路,正确答案,以及所有使用到的语法和知识点1.遍历 1解题步骤将第一个赋给temp变量,然后和第二个比较。比较方法就是逐个对比,获取公共的最长长度,获得前缀长度,赋给temp变量。再与下一个比较,直至结束,若中途发现temp为空可提前结束。class Solution {public: string longestCommonPrefix(vector<string>& strs) {

2020-08-24 11:42:32 226

原创 剑指 Offer 46. 把数字翻译成字符串 c++

剑指 Offer 46. 把数字翻译成字符串写在前面,小白从零刷题,在解答会写出思路,正确答案,以及所有使用到的语法和知识点1.动态规划解题步骤class Solution {public: int translateNum(int num) { string s=to_string(num); vector<int>ans; ans.push_back(1);//根据推算得来的,举例子 ans.pus

2020-08-24 11:35:25 120

原创 Leetcode刷题笔记模版

题目*写在前面,每一个题目都经过这样一个总结,在方法后后的数字含义时,每次重复再做一次时,给自己打分1-5,1表示完全不会,5表示顺利做完,那么在复习时便能轻松掌握自己对每种方法的熟练度1.方法 1如何想到?123解题步骤4562.方法 1如何想到?123解题步骤456时间复杂度/空间复杂度分析/面试场景如何作答面试官不同要求下的解题方式方法一时间空间复杂度时间复杂度:空间复杂度:方法二时间复杂度时间复杂度

2020-08-21 18:05:01 112

原创 剑指Offer58-II.左旋转字符串 c++

剑指Offer58-II.左旋转字符串写在前面,小白从零刷题,在解答会写出思路,正确答案,以及所有使用到的语法和知识点1.切片分为a+b,然后输出b+aclass Solution {public: string reverseLeftWords(string s, int n) { string temp; int i=0; while(i<n) temp+=s[i++]; s.erase(0,n);//eras

2020-08-20 17:06:47 163

空空如也

空空如也

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

TA关注的人

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