自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

hebtu666

少说,多做。

  • 博客(758)
  • 论坛 (1)
  • 收藏
  • 关注

原创 《这是全网最硬核redis总结,谁赞成,谁反对?》六万字大合集

后端需要知道的关于redis的事,基本都在这里了。此文后续会改为粉丝可见,所以喜欢的请提前关注。你的点赞和评论是我创作的最大动力,谢谢。《三天给你聊清楚redis》第1天先唠唠redis是个啥(18629字)一、入门Redis是一款基于键值对的NoSQL数据库,它的值支持多种数据结构:字符串(strings)、哈希(hashes)、列表(lists)、集合(sets)、有序集合(sorted sets)等。? Redis将所有的数据都存放在内存中,所以它的读写性能十分惊人,.

2021-03-15 14:00:02 20865 464

原创 【大总结3】leetcode解题总览(算法、剑指offer、SQL、多线程、shell)
原力计划

SQL大部分是付费题目,可以看我的做题记录,目前做了一半(50题),另一半我觉得做出来对我个人的提升较小了,所以暂时没有做。leetcode175. 组合两个表(SQL)leetcode176. 第二高的薪水leetcode 178. 分数排名(SQL)leetcode180. 连续出现的数字(SQL)leetcode181. 超过经理收入的员工(SQL)leetcod...

2020-03-22 18:12:35 30363 367

原创 【大总结2】大学两年,写了这篇几十万字的干货总结

本文十天后设置为粉丝可见,喜欢的提前关注不要白嫖请点赞不要白嫖请点赞不要白嫖请点赞文中提到的书我都有电子版,可以评论邮箱发给你。文中提到的书我都有电子版,可以评论邮箱发给你。文中提到的书我都有电子版,可以评论邮箱发给你。本篇文章应该算是Java后端开发技术栈的,但是大部分是基础知识,所以我觉得对任何方向都是有用的。1、数据结构数据结构是计算机存储、...

2019-12-08 15:17:20 172231 2726

原创 超硬核!数据结构学霸笔记,考试面试吹牛就靠它

上次发操作系统笔记,很快浏览上万,这次数据结构比上次硬核的多哦,同样的会发超硬核代码,关注吧。

2021-03-26 11:48:34 4656 42

原创 超硬核!学霸把操作系统经典算法给敲完了!要知行合一

上期的笔记,浏览快1万了,既然关注的人很多,那就发出来承诺过的算法全模拟,希望帮到你们。

2021-03-24 12:48:58 9403 55

原创 超硬核!操作系统学霸笔记,考试复习面试全靠它

之后会发布基于基础知识的大部分算法的模拟代码合集,敬请关注。

2021-03-22 18:44:01 12738 60

原创 不骗你,没读这一篇,你不可能懂二分

上篇文章讲动态规划获得了80k浏览,这次的二分也值得你们一看,这个系列是特别用心准备出书的哦

2021-03-22 10:40:19 10177 48

原创 《关于我横扫一线厂的那些面经》——百度后端(附答案)

作者保证,本系列全是纯干货真实记录,绝对不是某些营销号瞎编乱造的面试。一、公司的简介百度是全球最大的中文搜索引擎,是中国最大的以信息和知识为核心的互联网综合服务公司,更是全球领先的人工智能平台型公司。2000年1月1日创立于中关村,公司创始人李彦宏拥有“超链分析”技术专利,也使中国成为美国、俄罗斯、和韩国之外,全球仅有的4个拥有搜索引擎核心技术的国家之一。百度作为全球最大的中文搜索引擎,百度每天响应来自100余个国家和地区的数十亿次搜索请求,是网民获取中文信息的最主要入口。百度以“用科技...

2021-03-19 10:03:36 6923 57

原创 《关于我横扫一线厂的那些面经》滴滴Java岗(附答案)

手撕单例模式所谓单例,就是整个程序有且仅有一个实例。该类负责创建自己的对象,同时确保只有一个对象被创建。在Java,一般常用在工具类的实现或创建对象需要消耗资源。特点:类构造器私有、持有自己类型的属性、对外提供获取实例的静态方法懒汉模式 线程不安全,延迟初始化,严格意义上不是不是单例模式public class Singleton { private static Singleton instance; private Singleton (){}

2021-03-19 09:56:51 6297 43

原创 超硬核!躺进BAT以后我总结了出现最多的15道数组题

作为一个硬核作者,绝不和你扯废话,干货无套路送你题目一: 给定一个数组arr,求出需要排序的最短子数组长度要求: 时间o(n),空间o(1)思路: 有序的数组中,任意一个数字,一定小于左边的数大于右边的数。 我们找到的需要排序的子数组,显然是比右边最小的值大,或比左边最大的值小。 我们初始化变量noMinindex=-1;从右往左遍历,记录经过的最小值为min,若当前数大于min,说明,如果要有序,min一定要放 在当前数左边,我们...

2021-03-18 07:30:52 7066 37

原创 那个谷歌的网红扔鸡蛋的题,来看看教科书式的回答

leetcode顶级难题,谷歌面试天天问,来看看吧,带你来一步一步达到最优解。谷歌不知道问了多少遍,蓝桥杯也出现过,leetcode上是顶级难题,到底是什么题能如此频繁地出现?我们一探究竟吧。原题描述:x星球的居民脾气不太好,但好在他们生气的时候唯一的异常举动是:摔手机。各大厂商也就纷纷推出各种耐摔型手机。x星球的质监局规定了手机必须经过耐摔测试,并且评定出一个耐摔指数来,之后才允许上市流通。x星球有很多高耸入云的高塔,刚好可以用来做耐摔测试...

2021-03-17 10:35:04 7585 21

原创 必须知道的python专属骚技巧25例

本文我总结了25个python专属骚操作,实属提高效率/同事吹牛只利器,确定不收藏吗?一、原地交换Python 提供了一个直观的在一行代码中赋值与交换(变量值)的方法x, y = 10, 20print(x, y) x, y = y, xprint(x, y) #1 (10, 20)#2 (20, 10)原理:赋值的右侧形成了一个新的元组,左侧立即解析(unpack)那个(未被引用的)元组到变量 <a> 和 <b>。一旦赋值完成,新的元组变成..

2021-03-16 11:19:15 18664 167

原创 给女朋友用来复习Java的精华总结

输入java.util.Scanner 是 Java5 的新特征,我们可以通过 Scanner 类来获取用户的输入。下面是创建 Scanner 对象的基本语法:Scanner s = new Scanner(System.in);使用方法如下://对应类型用对应的方法接收 String stringx=s.next();String stringy=s.nextLine(); int intx=s.nextInt();long longx=s.nextLong();

2021-03-15 09:26:48 11447 25

原创 不骗你,给女朋友看的超级精华Java问题总结!

当时在网上汇总了不知多少面试和基础题,弄了个精华总结。1、一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制?可以有多个类,但只能有一个public的类,并且public的类名必须与文件名相一致。2、short s1= 1; s1= s1+1;有没有错?s1+1运算时会自动提升类型,结果是int,赋值给s1时,将报告需要强转类型的错误。3、short s1= 1; s1 += 1;有没有错?+=是java规定的运算符,编译器会对它进行特殊处理,因此可以正确编..

2021-03-15 09:22:40 15133 63

原创 算法题的输入大总结

本文以求和为例多组输入,每组输入共一行,包括两个整数A, BSample Input1 212 24400 500Sample Output336900import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); while(sc.hasNext()) {

2021-03-15 00:31:08 6872 32

原创 leetcode1047. 删除字符串中的所有相邻重复项(栈的日常应用)

给出由小写字母组成的字符串S,重复项删除操作会选择两个相邻且相同的字母,并删除它们。在 S 上反复执行重复项删除操作,直到无法继续删除。在完成所有重复项删除操作后返回最终的字符串。答案保证唯一。示例:输入:"abbaca"输出:"ca"解释:例如,在 "abbaca" 中,我们可以删除 "bb" 由于两字母相邻且相同,这是此时唯一可以执行删除操作的重复项。之后我们得到字符串 "aaca",其中又只有 "aa" 可以执行重复项删除操作,所以最后的字符串为 "ca"。提示:...

2021-03-11 12:34:27 2380 56

原创 《一天聊一个设计模式》 抽象工厂

4. 抽象工厂(Abstract Factory)Intent提供一个接口,用于创建 相关的对象家族 。Class Diagram抽象工厂模式创建的是对象家族,也就是很多对象而不是一个对象,并且这些对象是相关的,也就是说必须一起创建出来。而工厂方法模式只是用于创建一个对象,这和抽象工厂模式有很大不同。抽象工厂模式用到了工厂方法模式来创建单一对象,AbstractFactory 中的 createProductA() 和 createProductB() 方法都是让子类来实现,这两个方法单独来

2021-03-11 12:00:34 1179 1

原创 《一天聊一个设计模式》 策略

9. 策略(Strategy)Intent定义一系列算法,封装每个算法,并使它们可以互换。策略模式可以让算法独立于使用它的客户端。Class DiagramStrategy 接口定义了一个算法族,它们都实现了 behavior() 方法。Context 是使用到该算法族的类,其中的 doSomething() 方法会调用 behavior(),setStrategy(Strategy) 方法可以动态地改变 strategy 对象,也就是说能动态地改变 Context 所使用的算法。与状

2021-03-11 11:08:09 2641 1

原创 《一天聊一个设计模式》备忘录

备忘录(Memento)Intent在不违反封装的情况下获得对象的内部状态,从而在需要时可以将对象恢复到最初状态。Class DiagramOriginator:原始对象Caretaker:负责保存好备忘录Memento:备忘录,存储原始对象的的状态。备忘录实际上有两个接口,一个是提供给 Caretaker 的窄接口:它只能将备忘录传递给其它对象;一个是提供给 Originator 的宽接口,允许它访问到先前状态所需的所有数据。理想情况是只允许 Originator 访问本备忘录的内部状态。

2021-03-11 11:05:58 1097

原创 leetcode976. 三角形的最大周长(又是你得不到的简单题)

给定由一些正数(代表长度)组成的数组 A,返回由其中三个长度组成的、面积不为零的三角形的最大周长。如果不能形成任何面积不为零的三角形,返回0。示例 1:输入:[2,1,2]输出:5示例 2:输入:[1,2,1]输出:0示例 3:输入:[3,2,3,4]输出:10示例 4:输入:[3,6,2,3]输出:8提示:3 <= A.length <= 100001 <= A[i] <= 10^6class Solution {...

2021-03-08 15:59:41 6498 36

原创 leetcode1528. 重新排列字符串

给你一个字符串 s 和一个 长度相同 的整数数组 indices 。请你重新排列字符串 s ,其中第 i 个字符需要移动到 indices[i] 指示的位置。返回重新排列后的字符串。示例 1:输入:s = "codeleet", indices = [4,5,6,7,0,2,1,3]输出:"leetcode"解释:如图所示,"codeleet" 重新排列后变为 "leetcode" 。示例 2:输入:s = "abc", indices = [0,1,2]输出:"abc".

2021-03-08 15:52:55 1077

原创 leetcode1502. 判断能否形成等差数列(小学生难度)

给你一个数字数组 arr 。如果一个数列中,任意相邻两项的差总等于同一个常数,那么这个数列就称为 等差数列 。如果可以重新排列数组形成等差数列,请返回 true ;否则,返回 false 。示例 1:输入:arr = [3,5,1]输出:true解释:对数组重新排序得到 [1,3,5] 或者 [5,3,1] ,任意相邻两项的差分别为 2 或 -2 ,可以形成等差数列。示例 2:输入:arr = [1,2,4]输出:false解释:无法通过重新排序得到等差数列。提示..

2021-03-08 15:47:05 1845 13

原创 《一天聊一个设计模式》 单例

我是兔兔rabbit,关注我吧,给自己每天的进步找一个机会和理由,不要被无效信息淹没单例(Singleton)Intent确保一个类只有一个实例,并提供该实例的全局访问点。Class Diagram使用一个私有构造函数、一个私有静态变量以及一个公有静态函数来实现。私有构造函数保证了不能通过构造函数来创建对象实例,只能通过公有静态函数返回唯一的私有静态变量。ImplementationⅠ 懒汉式-线程不安全以下实现中,私有静态变量 uniqueInstance 被延迟实例化,这样做的好处.

2021-03-08 15:39:35 1211 19

原创 leetcode1721. 交换链表中的节点

给你链表的头节点 head 和一个整数 k 。交换 链表正数第 k 个节点和倒数第 k 个节点的值后,返回链表的头节点(链表 从 1 开始索引)。示例 1:输入:head = [1,2,3,4,5], k = 2输出:[1,4,3,2,5]示例 2:输入:head = [7,9,6,6,7,8,3,0,9,5], k = 5输出:[7,9,6,6,8,7,3,0,9,5]示例 3:输入:head = [1], k = 1输出:[1]示例 4:输入:head = [.

2021-03-07 17:22:17 1274 12

原创 leetcode1669. 合并两个链表

给你两个链表list1 和list2,它们包含的元素分别为n 个和m 个。请你将list1中第a个节点到第b个节点删除,并将list2接在被删除节点的位置。下图中蓝色边和节点展示了操作后的结果:请你返回结果链表的头指针。示例 1:输入:list1 = [0,1,2,3,4,5], a = 3, b = 4, list2 = [1000000,1000001,1000002]输出:[0,1,2,1000000,1000001,1000002,5]解释:我...

2021-03-07 17:16:41 3559 19

原创 leetcode设计链表,非常工整的实现你值得拥有

设计链表的实现。您可以选择使用单链表或双链表。单链表中的节点应该具有两个属性:val和next。val是当前节点的值,next是指向下一个节点的指针/引用。如果要使用双向链表,则还需要一个属性prev以指示链表中的上一个节点。假设链表中的所有节点都是 0-index 的。在链表类中实现这些功能:get(index):获取链表中第index个节点的值。如果索引无效,则返回-1。addAtHead(val):在链表的第一个元素之前添加一个值为val的节点。插入后,新节点将成为链表的...

2021-03-07 17:14:31 8631 17

原创 leetcode453. 最小操作次数使数组元素相等(贼难的简单题)

给定一个长度为 n 的 非空 整数数组,每次操作将会使 n - 1 个元素增加 1。找出让数组所有元素相等的最小操作次数。示例:输入:[1,2,3]输出:3解释:只需要3次操作(注意每次操作会增加两个元素的值):[1,2,3] => [2,3,3] => [3,4,3] => [4,4,4]思路n-1个数同时加一,就好比每次有一个数自身减一,这样的话每个元素减去最小值求其和就是答案。class Solution(object):...

2021-03-05 16:59:54 2101 37

原创 leetcode628. 三个数的最大乘积(简单,我觉得你不会)

给你一个整型数组 nums ,在数组中找出由三个数组成的最大乘积,并输出这个乘积。示例 1:输入:nums = [1,2,3]输出:6示例 2:输入:nums = [1,2,3,4]输出:24示例 3:输入:nums = [-1,-2,-3]输出:-6提示:3 <= nums.length <=104-1000 <= nums[i] <= 1000思路:有三个以上正数:三大有两个正数:两小一大有一个正数:两小一大没正...

2021-03-05 16:27:57 1996 21

原创 leetcode541. 反转字符串 II(字符串一律用py秒杀)

给定一个字符串 s 和一个整数 k,你需要对从字符串开头算起的每隔2k 个字符的前 k 个字符进行反转。如果剩余字符少于 k 个,则将剩余字符全部反转。如果剩余字符小于 2k 但大于或等于 k 个,则反转前 k 个字符,其余字符保持原样。示例:输入: s = "abcdefg", k = 2输出: "bacdfeg"提示:该字符串只包含小写英文字母。给定字符串的长度和 k 在 [1, 10000] 范围内。思路:通俗一点说,每隔k个反转k个,末尾不够k个时全部反转;...

2021-03-05 15:06:41 4520 24

原创 leader:你的代码太烂了我根本看不懂

一、可读性的重要性编程有很大一部分时间是在阅读代码,不仅要阅读自己的代码,而且要阅读别人的代码。因此,可读性良好的代码能够大大提高编程效率。可读性良好的代码往往会让代码架构更好,因为程序员更愿意去修改这部分代码,而且也更容易修改。只有在核心领域为了效率才可以放弃可读性,否则可读性是第一位。二、用名字表达代码含义一些比较有表达力的单词:单词可替代单词senddeliver、dispatch、announce、distribute、routefindsearch、ext

2021-03-05 00:10:22 5487 77

原创 正则表达式必知必会

一、概述正则表达式用于文本内容的查找和替换。正则表达式内置于其它语言或者软件产品中,它本身不是一种语言或者软件。正则表达式在线工具二、匹配单个字符. 可以用来匹配任何的单个字符,但是在绝大多数实现里面,不能匹配换行符;. 是元字符,表示它有特殊的含义,而不是字符本身的含义。如果需要匹配 . ,那么要用 \ 进行转义,即在 . 前面加上 \ 。正则表达式一般是区分大小写的,但也有些实现不区分。正则表达式rabbit匹配结果My name is rabbit .三、匹配一

2021-03-04 00:34:23 3978 44

原创 leetcode884. 两句话中的不常见单词(你肯定会被惊呆了)

给定两个句子A和B。(句子是一串由空格分隔的单词。每个单词仅由小写字母组成。)如果一个单词在其中一个句子中只出现一次,在另一个句子中却没有出现,那么这个单词就是不常见的。返回所有不常用单词的列表。您可以按任何顺序返回列表。示例 1:输入:A = "this apple is sweet", B = "this apple is sour"输出:["sweet","sour"]示例2:输入:A = "apple apple", B = "banana"输出:["...

2021-03-03 16:34:02 6084 46

原创 leetcode896. 单调数列

如果数组是单调递增或单调递减的,那么它是单调的。如果对于所有 i <= j,A[i] <= A[j],那么数组 A 是单调递增的。 如果对于所有 i <= j,A[i]> = A[j],那么数组 A 是单调递减的。当给定的数组 A是单调数组时返回 true,否则返回 false。示例 1:输入:[1,2,2,3]输出:true示例 2:输入:[6,5,4,4]输出:true示例 3:输入:[1,3,2]输出:false示例 4:输入:[..

2021-03-03 16:31:41 1187 20

原创 leetcode258. 各位相加(简单题,但是你不看答案想不出来)

给定一个非负整数 num,反复将各个位上的数字相加,直到结果为一位数。示例:输入: 38输出: 2解释: 各位相加的过程为:3 + 8 = 11, 1 + 1 = 2。 由于2 是一位数,所以返回 2。进阶:你可以不使用循环或者递归,且在 O(1) 时间复杂度内解决这个问题吗?思路:我想的是给的int是有范围的,我就重复很多次即可。class Solution { public int addDigits(int num) { num = num % 1..

2021-03-03 16:30:28 8064 83

原创 leetcode867. 转置矩阵

给你一个二维整数数组 matrix,返回 matrix 的 转置矩阵 。矩阵的 转置 是指将矩阵的主对角线翻转,交换矩阵的行索引与列索引。示例 1:输入:matrix = [[1,2,3],[4,5,6],[7,8,9]]输出:[[1,4,7],[2,5,8],[3,6,9]]示例 2:输入:matrix = [[1,2,3],[4,5,6]]输出:[[1,4],[2,5],[3,6]]提示:m == matrix.lengthn == matrix[i].leng..

2021-03-03 16:24:23 1212 6

原创 Redis 多线程网络模型全面揭秘

导语一文带你完全吃透 Redis 整个核心网络模型的原理和源码。目录导言Redis 有多快?Redis 为什么快?Redis 为何选择单线程?避免过多的上下文切换开销避免同步机制的开销简单可维护Redis 真的是单线程?单线程事件循环多线程异步任务Redis 多线程网络模型设计思路源码剖析性能提升模型缺陷总结博客原文导言在目前的技术选型中,Redis 俨然已经成为了系统高性能缓存方案的事实标准,因此现在 Redis...

2021-02-21 15:41:48 1418 15

转载 【半佛仙人】他从不买水军,凭什么一年内做到B站500万粉丝?

导语半佛仙人从BAT产品经理跳转到自媒体行业,短短一年,就在B站拥有500万粉丝。他坦言自己从不买水军,只相信科技赋能内容。今天他就要跟大家分享如何用产品的思维做出爆款内容。1 What:何为我认为的产品思维我认为产品思维就是把不确定性转化为确定性,然后让这样的确定性为自己服务,它是一个体系化的东西。首先要明确自己的目的是什么,不同的表达者有不同的利益诉求。你做的一切事情,都要有一个利益动机,你是为自己开心,甲方开心,还是读者开心?定了目的后,还需要把它拆分成很多个小点,就是你到底要怎样才..

2021-02-21 15:20:49 8656 22

原创 《不改变的CSDN,没有未来》,前50的专家实名发文

三十年河东,三十年河西,这句话在互联网战场上,应该改为十年。很多上个时代的王,掉队了。CSDN的历史和中国互联网产品的发展历史有一点像,更确切的说,是和某些互联网企业更像。历史歪歪斜斜的写着几个字:不改变,就灭亡。注:这是作为一个排名前五十的博客专家,几年老用户的使用感受。如果大家有什么对CSDN的建议和使用感受,可以评论区提出来。一、战场的历史回顾历史,互联网界,更像是十年为一个时代。00-10是pc互联网时代,在即将进入10时代时,我们的pc网民数量超过了美国,这是我...

2021-02-20 19:42:12 10957 414

转载 《剑指offer》全解(图文结合,通俗易懂,一篇看爽)

3. 数组中重复的数字题目链接牛客网题目描述在一个长度为 n 的数组里的所有数字都在 0 到 n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字是重复的,也不知道每个数字重复几次。请找出数组中任意一个重复的数字。Input:{2, 3, 1, 0, 2, 5}Output:2解题思路要求时间复杂度 O(N),空间复杂度 O(1)。因此不能使用排序的方法,也不能使用额外的标记数组。对于这种数组元素在 [0, n-1] 范围内的问题,可以将值为 i 的元素调整到第 i 个位置

2020-07-26 12:09:51 5394 115

原创 leetcode771. 宝石与石头 py永远的神!

给你一个整数数组 nums,请你返回其中位数为 偶数 的数字的个数。示例 1:输入:nums = [12,345,2,6,7896]输出:2解释:12 是 2 位数字(位数为偶数)345 是 3 位数字(位数为奇数) 2 是 1 位数字(位数为奇数)6 是 1 位数字 位数为奇数)7896 是 4 位数字(位数为偶数) 因此只有 12 和 7896 是位数为偶数的数字示例 2:输入:nums = [555,901,482,1771]输出:1解释:只...

2020-07-19 20:41:01 1763 69

空空如也

hebtu666的留言板

发表于 2020-01-02 最后回复 2020-07-14

空空如也

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

TA关注的人 TA的粉丝

提示 申博开户平台登入
确定要删除当前文章?
取消 删除
网站地图 申博电子游戏 澳门银河赌场 申博代理开户 申博登录不了
百家乐 太阳城在线存款登入 菲律宾申博游戏怎么登入 申博娱乐
777老虎机游戏登入 申博游戏下载 申博官网登录 申博现金百家乐
申博游戏登入 申博客户端下载 ag真人娱乐 菲律宾申博开户
太阳城亚洲注册 申博娱乐注册 太阳城申博官网 澳门百家乐