自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

鱼米粒

屏上得来终觉浅,绝知此事要躬行❤

原创 Markdown最基础的语法(自用)

前言: 为什么学Markdown语法? 因为经常写博客,之前都是点博客编辑器上方的各种操作,但是有点麻烦。总之,学这个纯属是因为我懒~(人类的很多发明不都是因为我们想在目前的操作上更省时省力,简称“懒”,才有了驱动力,所以不断的去发明、创造) 怎么学? -半个小时看完文档教程+找出自己目前需要用...

2020-03-04 15:27:17 105 0

转载 机器学习的入门介绍

参考文章: 计算机的潜意识 零、从机器学习谈起 机器学习的子类–深度学习 Windows Phone上的语音助手Cortana。Cortana背后的核心技术是什么,为什么它能够听懂人的语音?事实上,这个技术正是机器学习。 机器学习是所有语音助手产品(包括Apple的siri与Googl...

2020-05-09 14:22:48 271 0

原创 布隆过滤器

【原】布隆过滤器 (Bloom Filter) 详解 Bloom Filter的应用 极客时间 [数据结构与算法] 课关于布隆过滤器的导图:

2020-05-04 09:50:55 67 0

原创 KMP匹配算法

(原创)详解KMP算法 KMP算法的Next数组详解 求next数组的快速做题方法: 求出部分匹配值数组 右移一位,最左补-1(数组下标从0开始) 整体+1(数组下标从1开始) ...

2020-05-04 09:32:44 45 0

原创 大数据基石——Hadoop与MapReduce

此文章的公众号是:TechFlow 一、分布式文件系统 二、 MapReduce

2020-05-02 18:14:32 123 0

转载 从头搭建一个“微博”有多难?

转载文章:从头搭建一个“微博”有多难? 作者以从头开始搭建一个“微特”举例: 一、微特的诞生 假设微特只有两个功能,就是发微特和看微特。 拆分一下功能,会发现一共只有三个功能:用户发微特、关注其他用户和查看微特 二、微特一阶段 CDN:(Content Delivery Netwo...

2020-05-02 18:00:36 118 0

转载 关于技术和业务

互联网公司,无论国内国外,除了极少数技术驱动的公司,绝大部分的公司都是业务驱动的,或产品,或商业。 技术 + 业务,是的,技术人员除了掌握技术,还要深刻理解业务。 对业务的理解越深刻,你就越容易看到业务的问题。提出问题,并用自己的技术能力解决问题,才能真正将你的技术能力转变成生产力...

2020-04-29 06:17:06 82 0

原创 关于noSQL

一、noSQL什么意思? noSQL的no不是not,而是not only。 关于noSQL概念我至少看到了两种说法,一种说法是非关系型数据库,另一种说法是文档型数据库。我个人在理解的时候觉得这两种说法都不是非常完美,但相比之下显然是第二种更好,因为第一种说法完全没有给我们提供任何信息。文档型数...

2020-04-29 05:50:33 69 0

原创 关于鸿蒙OS的看法记录

准备复试时的一个观点: 我的观点:学习专业课要“理论联系实际”,比如,在操作系统学习过程中,掌握微内核和宏内核的知识可以更全面的认识鸿蒙OS的发布。 为何这样说? “更全面”:好/不好,需辩证的去看 鸿蒙OS是微内核,微内核的特点是模块化,提高开发效率但会降低性能。但是发布会时hw一直在强调...

2020-04-29 05:31:54 434 3

转载 TCP 三次握手和四次挥手的面试题

一、TCP头格式 序列号:在建立连接时由计算机生成的随机数作为其初始值,通过 SYN 包传给接收端主机,每发送一次数据,就「累加」一次该「数据字节数」的大小。用来解决网络包乱序问题。 确认应答号:指下一次「期望」收到的数据的序列号,发送端收到这个确认应答以后可以认为在这个序号以前的数据都已经被正...

2020-04-17 10:20:28 74 0

转载 分布式系统的简介

随着大型网站的各种高并发访问、海量数据处理等场景越来越多,如何实现网站的高可用、易伸缩、可扩展、安全等目标就显得越来越重要。为了解决这样一系列问题,大型网站的架构也在不断发展。提高大型网站的高可用架构,不得不提的就是分布式。本文主要简单介绍了分布式系统的概念、分布式系统的特点、常用的分布式方案以及...

2020-04-15 10:41:21 49 0

转载 操作系统知识汇总

一、操作系统基础 1.1 什么是操作系统? 操作系统(Operating System,简称OS)是管理计算机硬件与软件资源的程序,是计算机系统的内核与基石; 操作系统本质上是运行在计算机上的软件程序 ; 操作系统为用户提供一个与系统交互的操作界面 ; 操作系统分内核与外壳(我们可以把外壳理解成...

2020-04-13 12:28:57 138 0

转载 浅谈分布式集群资源管理系统【二】

一、局部优先的原则 在大数据应用的场景下有一个基本的设计原则:我们通常是将计算分配到存储数据的节点执行,而不是从节点拿到需要的数据再来进行计算。这背后的原因很容易想通,因为这样可以尽量减少节点之间的网络通信,减少了数据传输。要知道大数据场景下的数据的规模是非常大的,动辄TB,PB,少则也有几百几十...

2020-04-12 19:16:56 64 0

转载 redis的学习

一、基础篇 1. 什么是Redis? Redis (Remote Dictionary Server) 是一个使用 C 语言 编写的,开源的 (BSD许可) 高性能 非关系型(NoSQL) 的 键值对数据库。 2. Redis数据结构 Redis 可以存储 键 和 不同类型数据结构值 之间的映射关...

2020-04-11 17:50:42 49 0

原创 动态规划的题目汇总

一、斐波那契数列 爬楼梯 打家劫舍问题/强盗抢劫 二、矩阵路径 矩阵的最小路径和 矩阵的总路径数 三、数组区间 数组区间和 数组中等差数列的划分 四、分割整数 分割整数的最大乘积 按平方数来分割整数 解码方法/分割整数构成字母字符串 五、子序列 最长递增子序列 最长对数链...

2020-04-11 00:45:06 37 0

原创 《图解HTTP》笔记
原力计划

第一章:了解Web及网络基础 Web使用一种名为HTTP(HyperText Transfer Protocol,超文本传输协议)的协议作为规范,完成从客户端到服务器端等一系列运作流程。 为知识共享而规划Web 最初设想的基本理念:借助多文档之间相互关联形成的超文本(HyperText),连...

2020-04-10 04:56:21 71 0

原创 LeetCode 72. Edit Distance(编辑距离)

给你两个单词 word1 和 word2,请你计算出将 word1 转换成 word2 所使用的最少操作数 。 你可以对一个单词进行如下三种操作: 插入一个字符 删除一个字符 替换一个字符 示例 1: 输入:word1 = "horse", word2 = "ro...

2020-04-10 01:38:46 31 0

原创 LeetCode 583. Delete Operation for Two Strings(两个字符串的删除操作)

给定两个单词 word1 和 word2,找到使得 word1 和 word2 相同所需的最小步数,每步可以删除任意一个字符串中的一个字符。 示例: 输入: "sea", "eat" 输出: 2 解释: 第一步将"sea"变为"...

2020-04-10 01:37:50 35 0

原创 LeetCode 188. Best Time to Buy and Sell Stock IV(只能进行 k 次的股票交易)

最多可以完成 k 笔交易 public int maxProfit(int k, int[] prices) { //三维DP动态规划。三个维度,第一维表示天,第二维表示交易了几次,第三维表示是否持有股票 if(prices == null) return 0; ...

2020-04-10 00:39:48 27 0

原创 LeetCode 123. Best Time to Buy and Sell Stock III(只能进行两次的股票交易)

最多可以完成 两笔 交易 输入: [3,3,5,0,0,3,1,4] 输出: 6 解释: 在第 4 天(股票价格 = 0)的时候买入,在第 6 天(股票价格 = 3)的时候卖出,这笔交易所能获得利润 = 3-0 = 3 。 随后,在第 7 天(股票价格 = 1)的时候买入,在第 8 天...

2020-04-10 00:30:20 23 0

原创 LeetCode 714. Best Time to Buy and Sell Stock with Transaction Fee(买卖股票的最佳时机含手续费)

你可以无限次地完成交易,但是你每次交易都需要付手续费。如果你已经购买了一个股票,在卖出它之前你就不能再继续购买股票了。 (每次交易:买入+卖出,一个回合) 输入: prices = [1, 3, 2, 8, 4, 9], fee = 2 输出: 8 解释: 能够达到的最大利润: 在此处买入 ...

2020-04-10 00:17:23 25 0

原创 LeetCode 309. Best Time to Buy and Sell Stock with Cooldown(最佳买卖股票时机含冷冻期)

卖出股票后,你无法在第二天买入股票 (即冷冻期为 1 天)。 输入: [1,2,3,0,2] 输出: 3 解释: 对应的交易状态为: [买入, 卖出, 冷冻期, 买入, 卖出] public int maxProfit(int[] prices) { if(prices ==...

2020-04-10 00:07:37 29 0

原创 LeetCode 377. Combination Sum IV(组合总和 Ⅳ)

示例: nums = [1, 2, 3] target = 4 所有可能的组合为: (1, 1, 1, 1) (1, 1, 2) (1, 2, 1) (1, 3) (2, 1, 1) (2, 2) (3, 1) 请注意,顺序不同的序列被视作不同的组合。 因此输出为 7。 有顺序的完全背...

2020-04-09 21:51:00 34 0

原创 LeetCode 139. Word Break(单词拆分)

示例 1: 输入: s = "leetcode", wordDict = ["leet", "code"] 输出: true 解释: 返回 true 因为 "leetcode" 可以被拆分成 "leet co...

2020-04-09 21:44:04 33 0

原创 LeetCode 518. Coin Change 2(零钱兑换 II)

示例 1: 输入: amount = 5, coins = [1, 2, 5] 输出: 4 解释: 有四种方式可以凑成总金额: 5=5 5=2+2+1 5=2+1+1+1 5=1+1+1+1+1 示例 2: 输入: amount = 3, coins = [2] 输出: 0 解释: 只用面额2的...

2020-04-09 21:33:45 33 0

原创 LeetCode 322. Coin Change(零钱兑换)

Example 1: Input: coins = [1, 2, 5], amount = 11 Output: 3 Explanation: 11 = 5 + 5 + 1 Example 2: Input: coins = [2], amount = 3 Output: -1 每种硬币...

2020-04-09 21:15:57 22 0

原创 LeetCode 474. Ones and Zeroes(一和零)

示例 1: 输入: Array = {"10", "0001", "111001", "1", "0"}, m = 5, n = 3 输出: 4 解释: 总共 4 个字符串可以通过 5 个 0 ...

2020-04-09 17:45:39 26 0

原创 LeetCode 416. Partition Equal Subset Sum(分割等和子集)

对于这个问题,我们可以先对集合求和,得出 sum,把问题转化为背包问题: 给一个可装载重量为 sum / 2 的背包和 N 个物品,每个物品的重量为 nums[i]。现在让你装物品,是否存在一种装法,能够恰好将背包装满? Input: [1, 5, 11, 5] Output: true ...

2020-04-09 17:32:02 20 0

原创 LeetCode 1143. Longest Common Subsequence(最长公共子序列)

输入:text1 = "abcde", text2 = "ace" 输出:3 解释:最长公共子序列是 "ace",它的长度为 3。 public int longestCommonSubsequence(String text1,...

2020-04-09 17:14:46 26 0

原创 LeetCode 646. Maximum Length of Pair Chain(最长数对链)

Input: [[1,2], [2,3], [3,4]] Output: 2 Explanation: The longest chain is [1,2] -> [3,4] 法一:动态规划 和LeetCode第300题(最长子序列)思路一样。 public int findLon...

2020-04-09 17:01:05 27 0

原创 LeetCode 300. Longest Increasing Subsequence(最长上升子序列)

输入: [10,9,2,5,3,7,101,18] 输出: 4 解释: 最长的上升子序列是 [2,3,7,101],它的长度是 4。 public int lengthOfLIS(int[] nums) { int n = nums.length; int[] ...

2020-04-09 16:45:38 31 0

原创 Redis的介绍(根据马士兵教育的redis课程整理)

一、Redis的引入 1.1 数据存储不同方式的时间轴 1.2 Redis的安装 二、Redis的基础 2.1 原理 2.2 Redis的5大Value类型解析 三、redis的分布式

2020-04-09 15:40:37 254 0

原创 分布式术语

1. I/O优化 增加缓存,减少磁盘的访问次数。 优化磁盘的管理系统,设计最优的磁盘方式策略,以及磁盘的寻址策略,这是在底层操作系统层面考虑的。 设计合理的磁盘存储数据块,以及访问这些数据库的策略,这是在应用层面考虑的。例如,我们可以给存放的数据设计索引,通过寻址索引来加快和减少磁盘的访问量,...

2020-04-09 14:40:27 45 0

原创 关于Session、Cookie的介绍

一、为什么产生了cookie和session? HTTP 协议是一种无状态协议,即每次服务端接收到客户端的请求时,都是一个全新的请求,服务器并不知道客户端的历史请求记录;Session 和 Cookie 的主要目的就是为了弥补 HTTP 的无状态特性。 二、关于Session 2.1 Ses...

2020-04-09 14:09:53 40 0

原创 TCP建立连接为什么需要三次握手,而断开连接则需要四次?

一、TCP建立连接的过程 1. 第一次握手 客户端向服务器发出连接请求报文,这时报文首部中的同部位SYN=1,同时随机生成初始序列号 seq=x 此时,TCP客户端进程进入了 SYN-SENT(同步已发送状态)状态。TCP规定,SYN报文段(SYN=1的报文段)不能携带数据,但需要消耗掉一个序号...

2020-04-06 23:11:12 387 0

原创 4月4日网站变灰色的效果是怎么实现的?

4月4日时,很多网站包括主页和内容(包括图片、按钮等)也都已经变成了灰色。当天我打开的csdn、人人视频都全部变为了灰色。 我当时第一想法是难道把这些图片都换了一遍吗???但是成本未免太高,且可能会有疏漏。今天在公众号里看到了一篇推文的详细解释,记录一下。 一、实际的解决方法:(仅对于网站...

2020-04-06 22:28:20 453 0

原创 关于死锁的考点总结(死锁的定义、产生原因、四个必要条件、如何避免)

一、死锁的定义 死锁是一种由于多个进程竞争资源而陷入的一种僵局,若无外力作用,所有进程都将无法向前推进。 二、死锁的产生原因 竞争资源 进程间推进顺序非法 三、死锁的四个必要条件 互斥条件 不可剥夺条件 保持并请求条件 环路等待条件 四、如何避免死锁 按同一顺序访问对...

2020-04-06 12:13:37 62 0

原创 中缀表达式转后缀表达式(加括号法)

加括号法: 根据运算符的优先级对中缀表达式加括号(有几个运算符就有几对括号)(原本有的括号不用加) 将运算符移到对应的括号后面 去掉所有括号,即为后缀表达式 eg1:输入为a + b * c + (d * e + f)*g 1. 变成( ( a+(b*c) ) + ( ((d*e)+f) *...

2020-04-05 18:36:16 171 0

原创 计算机重要的核心概念

一、冯·诺依曼结构计算机的原理 所有的计算机语言, 最终都要变成基本的二进制指令,老老实实地在冯·诺依曼结构计算机上按规矩执行。 作为最基本的要求, 必须要了解CPU和内存这俩哥们是怎么亲密无间工作的: CPU从内存取出指令,进行译码和执行,执行时从内存中取出数据放到寄存器中, 进行计算, 然后把...

2020-04-05 15:17:23 90 0

转载 HTTP协议和HTTPS协议的理解

转载文章:【面试必备】硬核!30 张图解 HTTP 常见的面试题 一、HTTP基本概念 1.1 HTTP 是什么?描述一下 HTTP 是超文本传输协议,也就是HyperText Transfer Protocol。 1.2 能否详细解释「超文本传输协议」? HTTP的名字「超文本协议传...

2020-04-04 23:25:31 41 0

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