关关教你学编程
码龄8年
关注
提问 私信
  • 博客:234,369
    234,369
    总访问量
  • 345
    原创
  • 1,105,073
    排名
  • 143
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:四川省
  • 加入CSDN时间: 2017-02-28
查看详细资料
个人成就
  • 获得79次点赞
  • 内容获得88次评论
  • 获得205次收藏
  • 代码片获得503次分享
创作历程
  • 39篇
    2020年
  • 104篇
    2019年
  • 168篇
    2018年
  • 34篇
    2017年
成就勋章
TA的专栏
  • 开发工具
    4篇
  • JAVA
    1篇
  • 系统设计
    12篇
  • leetcode
    302篇
  • 人工智能
    11篇
  • python基础
    10篇
  • 环境配置
    3篇
创作活动更多

HarmonyOS开发者社区有奖征文来啦!

用文字记录下您与HarmonyOS的故事。参与活动,还有机会赢奖,快来加入我们吧!

0人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

Tomcat, RPC, Spring

一、Tomcat(Slimcat)Tomcat支持收发网络请求,如Http,TCP,UDP等形式,是容器。相当于在一个server硬件上面起了一个server软件,帮助我们和Client进行通信。是很底层的东西,与我们的代码不打交道,所以我们只需要知道Tomcat是干嘛的,不需要知道是如何实现的。七层通信协议,Tomcat可以理解为下面的六层,然后在上面build各种应用,每一个应用起一个Tomcat。相当于路由器,帮我们实现上网功能,至于上网干嘛,由我们自己定,上网做的事情,就相当于上面的应用。
原创
发布博客 2020.06.04 ·
944 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

JAVA中Lambda函数

1、lambda函数怎么发展来的最开始得写接口+类实现匿名类:如果一个class定义了方法,但没有具体执行代码,这个方法就是抽象方法,抽象方法用abstract修饰。因为无法执行抽象方法,因此这个类也必须申明为抽象类(abstract class)。因为抽象类本身被设计成只能用于被继承,因此,抽象类可以强迫子类实现其定义的抽象方法,否则编译会报错。因此,抽象方法实际上相当于定义...
原创
发布博客 2020.04.28 ·
2569 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

shell入门

1. touch新建一个不存在的文件:touch a.text2.echo用于字符串的输出(1) echo "It is a test"这里的双引号完全可以省略,以下命令与上面实例效果一致:echo It is a test(2) 显示结果定向至文件echo "It is a test" > myfile3.cat 打印文件内容...
原创
发布博客 2020.04.20 ·
440 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

git入门

Git是目前最流行的版本管理系统,用于文件管理。一、Git 版本模型Remote:远程仓库(github,gitlab) Respository:本地仓库 Workspace:本地工作区 Index(stage): 暂存区我们把文件往Git版本库里添加的时候,是分两步执行的:1、git add把文件添加进去,实际上就是把文件修改添加到暂存区。2、git commit...
原创
发布博客 2020.04.15 ·
373 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Vim入门

查找:/ 不需要冒号 跳到指定行(n为指定的行号):n如何一次性把文件里面的东西全删掉:敲gg跳到第一行,敲dG删除到最后一行 不需要冒号显示行号:set nu 或者 :set number 取消行号::set nonu:w 保存 :q 退出 :q! 强制退出 保存退出命令":wq"和":x"的区别::wq 强制写入并退出(即使文件没有被修改也强制写入,并更新...
原创
发布博客 2020.04.15 ·
267 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

设计一个网页爬虫

一、需求沟通1、用例需求说明:1. 百度这个网站,通过一系列的url链接,然后去爬取一系列的网站上的数据,生成标题和摘要信息存下来。2. 用户通过在百度搜索框内输入搜索词之后,可以看到相关的搜索结果列表。这些列表显示的就是之前爬取到的页面标题和摘要。2、算数二、答案1、概要设计2、扩展设计3、关键点总结1. 爬虫的部分是不对用户的,...
原创
发布博客 2020.02.15 ·
612 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

设计推特时间轴与搜索功能

一、需求沟通1、用例1. 用户发布了一篇推特服务将推特推送给关注者,给他们发送消息通知与邮件2. 用户浏览用户时间轴(用户最近的活动)3. 用户浏览主页时间轴(用户关注的人最近的活动)4. 用户搜索关键词5. 服务需要有高可用性2、算数二、答案1、概要设计2、扩展设计3、关键点总结1....
原创
发布博客 2020.02.15 ·
1380 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

在 AWS 上设计支持百万级到千万级用户的系统

一、需求沟通1、用例1. 用户进行读或写请求服务进行处理,存储用户数据,然后返回结果2. 服务需要从支持小规模用户开始到百万用户在我们演化架构来处理大量的用户和请求时,讨论一般的扩展模式服务高可用2、算数二、答案1、概要设计Web Server用来读、写、存储2、扩展设计,用户+运用纵向扩展: 选择一台更大容量(性能更好)的服务器...
原创
发布博客 2020.02.15 ·
627 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

为 Amazon 设计分类售卖排行

一、需求沟通1、用例1、服务根据分类计算过去一周中最受欢迎的商品2、用户通过分类浏览过去一周中最受欢迎的商品3、服务有着高可用性2、算数二、答案1、概要设计2、扩展设计3、关键点总结1、Sales API负责交易的API2、Read API负责浏览的API3、Sales Rank API通过交易数据按分类计算上周最受...
原创
发布博客 2020.02.15 ·
356 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

设计 Mint.com

一、需求沟通1、用例2、算数二、答案1、概要设计2、设计扩展3、关键点总结1、Accounts API:负责账户相关的业务2、Queue:(1)数据量大,需要异步处理(2)不需要实时(3)不能丢数据,著名的队列中间件:Kafka,为了确认不丢数据,有个ACK确认机制,写进去之后,必须收到ACK=1,表明数据已经写入了,才...
原创
发布博客 2020.02.14 ·
532 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

为一个社交网络设计数据结构

一、需求沟通1、用例1、用户寻找某人并显示与被寻人之间的最短路径2、服务高可用2、算数二、答案1、概要设计2、扩展设计3、关键点总结1、Query API查询API,负责查询相关的业务2、Lookup Service查询一个用户及其好友关系,先找到该用户存在哪一台机器上,再锁定好友关系3、Person Server存储一个用...
原创
发布博客 2020.02.14 ·
991 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

系统设计的面试题和解答

1、设计 Pastebin.com (或者 Bit.ly) 2、 3、 4、 5、 6、 7、 8、
原创
发布博客 2020.02.14 ·
614 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

设计一个键-值缓存来存储最近 web 服务查询的结果

一、需求沟通1、用例1、用户发送一个搜索请求,命中缓存2、用户发送一个搜索请求,未命中缓存3、服务有着高可用性2、算数二、答案1、概要设计...
原创
发布博客 2020.02.14 ·
249 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

设计 Pastebin.com (或者 Bit.ly)

一、需求沟通1、用例1、用户输入一些文本,然后得到一个随机生成的链接过期时间 默认为永不过期 可选设置为一定时间过期 2、用户输入粘贴板中的 url,查看内容3、用户是匿名访问的4、服务需要能够对页面进行跟踪分析月访问量统计5、服务将过期的内容删除6、服务有着高可用性2、算数二、答案1、概要设计2、扩展设计3、关键点总结...
原创
发布博客 2020.02.14 ·
981 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

444. 序列重建

验证原始的序列org是否可以从序列集seqs中唯一地重建。序列org是 1 到 n 整数的排列,其中 1 ≤ n ≤ 104。重建是指在序列集seqs中构建最短的公共超序列。(即使得所有 seqs中的序列都是该最短序列的子序列)。确定是否只可以从seqs重建唯一的序列,且该序列就是org。示例 1:输入:org: [1,2,3], seqs: [[1,2],[...
原创
发布博客 2020.02.01 ·
1339 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

310. 最小高度树

对于一个具有树特征的无向图,我们可选择任何一个节点作为根。图因此可以成为树,在所有可能的树中,具有最小高度的树被称为最小高度树。给出这样的一个图,写出一个函数找到所有的最小高度树并返回他们的根节点。格式该图包含n个节点,标记为0到n - 1。给定数字n和一个无向边edges列表(每一个边都是一对标签)。你可以假设没有重复的边会出现在edges中。由于所有的边都是无...
原创
发布博客 2020.02.01 ·
437 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

图的题目归类总结

类别 题目 并查集 261, 323, 684 最短路径 743 最小生成树 1135 拓扑排序 207, 210, 802,310 关键路径法 图的知识点补...
原创
发布博客 2020.01.31 ·
620 阅读 ·
0 点赞 ·
1 评论 ·
1 收藏

332. 重新安排行程

给定一个机票的字符串二维数组[from, to],子数组中的两个成员分别表示飞机出发和降落的机场地点,对该行程进行重新规划排序。所有这些机票都属于一个从JFK(肯尼迪国际机场)出发的先生,所以该行程必须从 JFK 出发。说明:如果存在多种有效的行程,你可以按字符自然排序返回最小的行程组合。例如,行程 ["JFK", "LGA"] 与 ["JFK", "LGB"] 相比就更小,排序更靠前...
原创
发布博客 2020.01.31 ·
380 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

785. 判断二分图

给定一个无向图graph,当这个图为二分图时返回true。如果我们能将一个图的节点集合分割成两个独立的子集A和B,并使图中的每一条边的两个节点一个来自A集合,一个来自B集合,我们就将这个图称为二分图。graph将会以邻接表方式给出,graph[i]表示图中与节点i相连的所有节点。每个节点都是一个在0到graph.length-1之间的整数。这图中没有自环和平行边:graph[i]中不存...
原创
发布博客 2020.01.31 ·
286 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

261. 以图判树

给定从0到n-1标号的n个结点,和一个无向边列表(每条边以结点对来表示),请编写一个函数用来判断这些边是否能够形成一个合法有效的树结构。示例 1:输入: n = 5, 边列表 edges = [[0,1], [0,2], [0,3], [1,4]]输出: true示例 2:输入: n = 5, 边列表 edges = [[0,1], [1,2], [2,3], [...
原创
发布博客 2020.01.31 ·
1982 阅读 ·
0 点赞 ·
0 评论 ·
6 收藏
加载更多