自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 详解基于栈的算法

单调栈要求每次入栈的元素必须要有序(如果新元素入栈不符合要求,则将之前的元素出栈,直到符合要求再入栈),使之形成单调递增/单调递减的一个栈。分类单调递增栈(按出栈顺序递增,即是一个递减的数组)只有比栈顶小的才能入栈,否则就把栈顶出栈一直到没有比该值更大的,再入栈。出栈时可能会有一些计算。单调递减栈(按出栈顺序递减,即是一个递增的数组)只有比栈顶大的才能入栈,否则就把栈顶出栈一直到没有比该值更小的,再入栈。...

2022-07-20 14:59:24 202 1

原创 详解动态规划

详解动态规划

2022-06-30 18:48:37 165

原创 详解贪心算法

详解贪心算法文章目录详解贪心算法什么是贪心算法适用条件如何实现summary算法局限性贪心/分治/dp的区别examples找零钱问题股票问题分发糖果背包问题0-1 背包问题部分背包问题references:贪心算法详解程序员算法基础——贪心算法详解贪心算法(Python实现贪心算法典型例题)递归,分治算法,动态规划和贪心选择的区别什么是贪心算法狭义的贪心算法指的是解最优......

2020-03-01 09:51:21 5571

原创 详解分治算法

详解分治算法文章目录详解分治算法概念适用条件解题步骤summary时间复杂度常见题型快排和归并排序汉诺(Hanoi)塔问题引入思路分析时间复杂度references:分治算法详解分治算法总结概念字面上的解释是“分而治之”,就是把一个复杂的问题分成两个或更多的相同或相似的子问题,再把子问题分成更小的子问题……直到最后子问题可以简单的直接求解,原问题的解即子问题的解的合并。这个技巧是很多高...

2020-01-16 16:37:21 1061 1

原创 排序算法的应用-leetcode

排序算法的应用文章目录排序算法的应用荷兰国旗问题-leetcode-75-颜色分类leetcode-56-合并区间荷兰国旗问题-leetcode-75-颜色分类references:颜色分类 给定一个包含红色、白色和蓝色,一共 n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。 此题中,我们使用整数 0、 1 和 2 分别...

2020-01-02 20:14:29 476 1

原创 详解二分查找法

详解二分查找法文章目录详解二分查找法概念应用场景(适用条件)解题步骤代码框架关于这段代码的keys为什么 while 循环的条件中是 <=,而不是 < ?什么时候应该停止搜索呢?为什么 left = mid + 1,right = mid - 1?算法缺陷寻找左侧边界的二分搜索寻找右侧边界的二分搜索summary例题参考references:详解二分查找算法Java常见算法之二...

2019-12-25 17:39:23 2040 2

原创 详解回溯法

文章目录回溯法概念适用条件解题步骤回溯法和DFS的区别常见题型素数环迭代递归回溯法references:回溯算法回溯算法详细讲解回溯算法(一)回溯法-素数环问题素数环(java实现)概念回溯(backtracking)法是一种选优搜索法,按选优条件向前搜索,以达到目标。但当探索到某一步时,发现原先选择并不优或达不到目标,就退回一步重新选择,这种走不通就退回再走的技术为回溯法,而满...

2019-12-04 17:11:10 4877

原创 javascript排序算法

javascript排序算法以下是JavaScript实现各种排序算法,并在文末对各种排序进行简单比较。文章目录javascript排序算法简单排序高级排序冒泡排序:选择排序:插入排序:希尔排序:快速排序:归并排序:堆排序堆排序的时间复杂度分析思考堆排序的稳定性什么是稳定排序?简单排序冒泡排序选择排序插入排序高级排序希尔排序快速排序归并排序堆排序冒泡排序:特...

2019-08-29 22:04:34 353

原创 leetcode

leetcode刷题记录–算法学习文章目录leetcode刷题记录--算法学习算法的时间复杂度和空间复杂度时间复杂度(Time Complexity)空间复杂度(Space Complexity)排序算法的时间和空间复杂度两数之和(简单-)两个链表倒序相加(中等-数学)整数反转(简单-数学)合并区间(中等-数组)二叉树遍历二叉树的深度优先和广度优先遍历深度优先遍历重建二叉树链表单向链表双向链表循...

2019-08-07 11:24:08 689

原创 ETCD 学习笔记

Etcd 是一个分布式,可靠的 Key-Value 存储系统,主要用于存储分布式系统中的关键数据。初见之下,Etcd 与 NoSQL 数据库系统有几分相似,但作为数据库绝非 Etcd 所长,其读写性能远不如 MongoDB、Redis 等 Key-Value 存储系统。

2023-06-12 17:32:00 1438

原创 linux coredump

发展至今,GDB 已经迭代了诸多个版本,当下的 GDB 支持调试多种编程语言编写的程序,包括 C、C++、Go、Objective-C、OpenCL、Ada 等。进程从内核态返回到用户态前,内核会查看进程的信号队列中是否有信号没有处理,如果有就调用 do_signal 内核函数处理信号,如果要处理的信号会触发生成 coredump 文件,那么内核就会调用 do_coredump 函数生成 coredump 文件。如果代码有异常频繁触发上图中的信号会不停的生成 coredump 文件,最终磁盘被打满。

2023-04-21 19:59:41 483 1

原创 详解基于堆的算法

(二叉)堆是一种数据结构,它可以看成是一个近似于完全二叉树(除了最后一层外,其他层都被填满)的数组。本文将从概念,基础算法,常见应用等层次陈述内容。

2023-02-02 14:54:30 663

原创 详解链表相关算法

链表(linked list)是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。[算法导论链表相关的题解](https://walkccc.me/CLRS/Chap10/10.2/)。本文将从概念,基础算法,常见题目等方面进行陈述。

2023-02-02 14:48:00 390

原创 详解前缀和与差分问题

详解前缀和与差分问题

2022-11-18 21:15:31 258

原创 Python & Django 问题记录

Python & Django 问题记录

2022-10-24 19:23:01 678

原创 数据库学习笔记(3)

数据库学习笔记

2022-10-13 19:13:53 331

原创 详解双指针法

详解双指针法,对撞指针,同向指针,滑动窗口

2022-10-11 14:38:48 245 1

原创 详解二叉树算法

详解二叉树算法binary treebinary search tree

2022-09-25 10:12:55 325

原创 详解指数退避算法

指数退避算法 exponential backoff algorithm

2022-09-21 14:42:24 2489

原创 详解 http 鉴权

http 鉴权方式详解

2022-09-21 11:00:57 3367

原创 如何写好研发技术方案

如何写好研发技术方案

2022-07-15 18:51:43 1171

原创 数据库学习笔记(1)

元数据(MetaData)元数据是用来描述数据的数据(Data that describes other data)。元数据最大的好处是,它使信息的描述和分类可以实现格式化,从而为机器处理创造了可能。一些注意点:彻底搞懂Mongoose中update,updateOne,updateMany和findOneAndUpdate关于 中常用的 修改器:MongoDB之关键字,以及关键字,以及关键字,以及修饰器set,set,set,inc,push,push,push,pull,$pop需求: 查出订阅者邮

2022-07-14 15:55:55 196

原创 redis 学习笔记(一)

文章目录redis存储的数据类型redis 关键技术事件循环逐出过期持久化主从复制(异步操作:写入成功即成功)pipelinemgetredis集群:一致性 hash & redis clusterredis 客户端: 服务发现什么是服务发现redis 客户端: failoverredis 延迟删除&双机房删除redis 分布式锁本笔记主要涉及学习 redis 过程中做的一些笔记,包含最初比较浅显的了解(所以会有一些比较简单的笔记描述),到后面对其应用的逐渐学习和补齐。其中主要参考书籍为

2022-05-16 16:17:11 413

原创 Python+Django+Drf+drf-yasg 学习笔记

Django+Drf+drf-yasg 学习笔记References:Django drf 教程Django 项目启动:# 创建环境 python -m venv venv # 安装依赖pip install -r requirement.txt# 检测模型文件修改(初次启动的时候可以直接 migrate)python manage.py makemigrations app_name# 创建新定义的模型的数据表python manage.py migrate# 收集静态文件

2022-03-17 12:10:23 2177 1

原创 JavaScript 设计模式之包装模式

JavaScript 设计模式之包装模式解释该设计模式,由什么问题由来的或者说解决了什么问题怎么做与其他模式对比或者说该模式最大的特点是什么文章目录JavaScript 设计模式之包装模式装饰者模式什么是装饰者模式howpoints适配器模式什么是适配器模式howpoints「包装模式」对比装饰者模式什么是装饰者模式装饰者模式是一种给对象动态的增加一些职责的方式,这种设计模式出现的原因是想改造原函数或者说对象(因为在 js 中函数也是一种对象)但又不想改动其本身。how我们在这里抛出

2022-02-17 16:27:59 367

原创 简悉 Nginx

简悉 NGINX

2022-02-14 16:27:09 1478

原创 架构方面学习笔记(3)-前端架构设计

前端架构

2022-02-08 16:19:13 1970

原创 架构方面学习笔记(2)--计算机系统

计算机系统

2022-01-19 20:03:41 1935

原创 Vue2 compositon api & Vue 3

Vue2 compositon api & Vue3

2021-11-07 11:19:08 366

原创 http request handler 与 web 应用开发框架

http request handler 与 web 应用开发框架文章目录http request handler 与 web 应用开发框架express create server vs http.createServerevent handlerevent handler 是处理所有程序中接收到的输入事件的一个回调,通常是异步执行。js 中的 event handler 可以用来处理和验证用户输入、用户操作或浏览器操作。以 event handler 的概念对比,http request

2021-10-24 22:39:43 706

原创 shell 脚本实践指南

shell 脚本实践指南grepgrep命令: global search regular expression(RE) and print out the line-E 使用正则表达式查找-i 不区分大小写-r/-R 递归查找-n 输出行号-v 反向匹配-w 全字匹配# 查询当前目录下不区分大小写所有含有 web 的文件grep -ri web ./* --color=auto# 查询环境变量中带有 nvm(不区分大小写) 的内容env | grep -i nvmhis

2021-10-23 11:47:16 53

原创 关于 SSH 应用,你知道多少?

ssh 密钥其实我们并不陌生,无论是使用 Github 还是 gitlab 这种使用 git 管理项目的平台,都会可能使用 ssh 协议传输资料。服务器上的 Git - 协议数字签名是什么? ????????????免密登陆和ssh-copy-id命令解析利用 ssh 的用户配置文件 config 管理 ssh 会话How to use ssh-keygen to generate a new SSH key ????????????????????ruanyifeng ssh-tutoria

2021-10-21 13:48:50 583

原创 代码大全(读书笔记)

代码大全(读书笔记)2021.06.27 开始阅读此书,这篇文章记录了一些读此书或者这款时间工作生活的一些心路,希望自己能持续从此受益。2021.08.05 此次阅读的关注点在第 3/4/6/7/12/13 章我虽然是计算机行业从业者,但本身不是计算机专业出身,很惭愧没能更早的耳濡目染更多基础但不可忽略的知识,虽此行业已被很多其他行业从业者开始逐步进入,但私以为最基本的素养不应该被降低,也因此不断提醒和鞭策自己,学习是一件不得不做且应该去做的事。—2021.06.27文章目录代码大全

2021-08-09 13:31:04 330

原创 页面设计学习笔记(1)

页面设计学习笔记(1)本文从实际开发中遇到的一些问题出发,总结以及学习一些设计理念2021/07/14 add 初次整理disable 你用对了吗合理去 disable 选项,避免没必要的「禁用」disable 的选项要添加 toolTip 来帮助提示用户为什么我们要禁用这个地方。页面空间利用对了吗以前做响应式有个盲区,通常定 padding 或 margin,或固定内容区占屏幕宽度的 x 百分比,实际上这样做合适吗?实际上应该固定最大宽度,而不是固定百分比让

2021-07-14 21:40:42 81

原创 数据库学习笔记(2)

文章目录数据库学习笔记(2)数据库设计什么是数据库设计为什么要进行数据库设计数据库设计步骤一个案例数据库学习笔记(2)2021/05/26 add 数据库设计数据库设计节选自 imooc 数据库设计那些事儿什么是数据库设计keywords:有效存储高效访问常见的关系型数据库?MySQLOracleSQLServerPgSQL常见的非关系型数据库MongoMemcacheRedis为什么要进行数据库设计进行合理的数据库设计也对未来有可能的慢查询调优

2021-07-07 13:39:20 141

原创 时序图、E-R 图等工具学习

工具学习2020/11/10 add 时序图学习2020/11/12 add curl 学习2021/04/13 add E-R 图 学习references:【UML 建模】UML入门 之 交互图 – 时序图 协作图详解 ????????????UML建模之时序图(Sequence Diagram)curl 的用法指南 ????????curl 学习从浏览器向一个 url 发起请求时往往在未经配置的情况下会额外请求一次 favicon,因此建议使用 curl 或

2021-04-13 14:03:39 1601 1

原创 QA 问题整合

QA 问题整合文章目录QA 问题整合@[toc]前后端测试前端测试服务端测试限流策略黑盒扫描与流量重放2020/09/01 限流策略2021/02/28 前后端测试前后端测试最近工作中会涉及测试用例的编写等等,特此进行记录。测试不仅仅是测试人员进行补齐,通常我们在代码微调甚至代码重构过程中可能会误将一些功能的实现造成了影响,此时测试就起了重要作用,它可以在新改动上线前回归测试一下所有的功能以保证正常上线。前端测试框架对比(js单元测试框架对比)软件测试的分类unit单元测试和e

2021-02-28 15:41:05 223

原创 前端、服务端 Code Review 总结

Code Review 总结@toc前端命名规范localStorage 中的 key 最好是统一有辨识度的,如均以品牌名开头降低冗余,提高代码可读性如 VUE 中能放在计算属性中的尽量不要直接写值,这样容易维护且可读性强不以汉字或 label 进行区分值服务端捕获错误的位置try catch 只能 catch 住 try 体中可能抛出的错误,但并不能 catch 其中 async/await 函数中的错误,如果想捕获到应该将用如下这种方式先抛出错误再进行捕获。await().

2021-01-20 20:54:46 167

原创 如何设计一个通用的通知机制

如何设计一个通用的通知机制

2020-12-14 13:06:08 603

原创 JavaScript 设计模式之代理模式

JavaScript 设计模式之代理模式文章目录JavaScript 设计模式之代理模式references:JavaScript设计模式——代理模式 /** * 代理模式:虚拟代理 * 比如实现图片的预加载,在图片请求回来之前显示一张loading图,请求完成后显示真正的图 */ let myImg=(function (){ let imgNode=document.createElement('img'); documen

2020-10-13 23:32:22 132

空空如也

空空如也

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

TA关注的人

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