博客园 - Howardwang
uuid:24b78886-0ed1-41c2-8670-e3f31dcf42c4;id=3124
2020-08-29T10:05:12Z
Howardwang
https://www.cnblogs.com/leyang2019/
feed.cnblogs.com
https://www.cnblogs.com/leyang2019/p/13582940.html
【新鲜出炉的个人项目】基于 Flink 的商品推荐系统 - Howardwang
Recs FlinkCommodityRecommendationSystem(基于 Flink 的商品推荐系统) 1. 前言 系统取名为 Recs,灵感源于 Recommendation System。logo 使用在线 logo 网站制作。 作者开发该项目,是为了学习 Flink 以及相关大数据
2020-08-29T09:53:00Z
2020-08-29T09:53:00Z
Howardwang
https://www.cnblogs.com/leyang2019/
【摘要】Recs FlinkCommodityRecommendationSystem(基于 Flink 的商品推荐系统) 1. 前言 系统取名为 Recs,灵感源于 Recommendation System。logo 使用在线 logo 网站制作。 作者开发该项目,是为了学习 Flink 以及相关大数据 <a href="https://www.cnblogs.com/leyang2019/p/13582940.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leyang2019/p/12879201.html
深入理解并查集 - Howardwang
并查集是一种树形结构,它是由并查集算法进行维护的。而并查集算法(Union find algorithm),顾名思义,它主要是由 “合并集合” 和 “查找集合”,”合并集合“是将两个连通的集合合并为一个集合,”查找集合“判断某个节点的代表节点,也就是根节点。 1. 并查集算法的应用场景 图的连通性,
2020-05-12T14:15:00Z
2020-05-12T14:15:00Z
Howardwang
https://www.cnblogs.com/leyang2019/
【摘要】并查集是一种树形结构,它是由并查集算法进行维护的。而并查集算法(Union find algorithm),顾名思义,它主要是由 “合并集合” 和 “查找集合”,”合并集合“是将两个连通的集合合并为一个集合,”查找集合“判断某个节点的代表节点,也就是根节点。 1. 并查集算法的应用场景 图的连通性, <a href="https://www.cnblogs.com/leyang2019/p/12879201.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leyang2019/p/12853022.html
「深入理解 JVM 一」类加载器及自定义类加载器 - Howardwang
一、 类加载器介绍 类加载器负责在运行期间将 Java 类动态加载到 JVM 内存中。因此 JVM 不需要了解底层文件或者文件系统来运行 Java 程序。类经过: 加载、链接(验证、准备、解析)、初始化,最终形成可以被虚拟机直接使用的 Java 类型。 加载:将 .class 文件加载到内存中 链接
2020-05-08T13:07:00Z
2020-05-08T13:07:00Z
Howardwang
https://www.cnblogs.com/leyang2019/
【摘要】一、 类加载器介绍 类加载器负责在运行期间将 Java 类动态加载到 JVM 内存中。因此 JVM 不需要了解底层文件或者文件系统来运行 Java 程序。类经过: 加载、链接(验证、准备、解析)、初始化,最终形成可以被虚拟机直接使用的 Java 类型。 加载:将 .class 文件加载到内存中 链接 <a href="https://www.cnblogs.com/leyang2019/p/12853022.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leyang2019/p/12235676.html
IDEA 不能正常导包 - Howardwang
从github上下载了一个 maven 项目, 打开后对应的依赖也下载好了,可是却不能正常导包。 结果发现是 maven 设置的问题。 从网上下载的 maven 项目可能依旧用的别人的设置,所以自己需要改一下。 如下图: 我改动了三个地方 maven home directory //maven 安
2020-01-27T04:21:00Z
2020-01-27T04:21:00Z
Howardwang
https://www.cnblogs.com/leyang2019/
【摘要】从github上下载了一个 maven 项目, 打开后对应的依赖也下载好了,可是却不能正常导包。 结果发现是 maven 设置的问题。 从网上下载的 maven 项目可能依旧用的别人的设置,所以自己需要改一下。 如下图: 我改动了三个地方 maven home directory //maven 安 <a href="https://www.cnblogs.com/leyang2019/p/12235676.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leyang2019/p/11960192.html
【MIT 6.824 】分布式系统 课程笔记(二)Lecture 03 : GFS - Howardwang
Lecture 03 : GFS 一、一致性 1, 弱一致性 可能会读到旧数据 2, 强一致性 读到的数据都是最新的 3, 一致性比较 强一致性对于app的写方便, 但是性能差 弱一致性有良好的性能, 并且容易延伸服务器, 但是出问题难定位 二、系统设计 1, 为什么chunks那么大 为了均摊费用
2019-11-29T12:49:00Z
2019-11-29T12:49:00Z
Howardwang
https://www.cnblogs.com/leyang2019/
【摘要】Lecture 03 : GFS 一、一致性 1, 弱一致性 可能会读到旧数据 2, 强一致性 读到的数据都是最新的 3, 一致性比较 强一致性对于app的写方便, 但是性能差 弱一致性有良好的性能, 并且容易延伸服务器, 但是出问题难定位 二、系统设计 1, 为什么chunks那么大 为了均摊费用 <a href="https://www.cnblogs.com/leyang2019/p/11960192.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leyang2019/p/11957676.html
《The Google File System》 笔记 - Howardwang
《The Google File System》 笔记 一、Introduction 错误是不可避免的,应当看做正常的部分而不是异常。因此需要设计持续监控,错误检查,容错,自动恢复的系统。 传统标准的文件是巨大的,GB以上都是正常的。当数据快速增长的时候,直接管理大文件是不明智的。因此需要重新考虑
2019-11-29T06:42:00Z
2019-11-29T06:42:00Z
Howardwang
https://www.cnblogs.com/leyang2019/
【摘要】《The Google File System》 笔记 一、Introduction 错误是不可避免的,应当看做正常的部分而不是异常。因此需要设计持续监控,错误检查,容错,自动恢复的系统。 传统标准的文件是巨大的,GB以上都是正常的。当数据快速增长的时候,直接管理大文件是不明智的。因此需要重新考虑 <a href="https://www.cnblogs.com/leyang2019/p/11957676.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leyang2019/p/11953575.html
【MIT 6.824 】分布式系统 课程笔记(一) - Howardwang
Lecture 02 Infrastructure: RPC & threads 一、多线程挑战 共享数据: 使用互斥信号量、或者避免共享 线程间协作: 使用channels 或者 waitgroup 来等待所有map线程结束 并发粒度: 粗粒度: 简单,但是并发性不高 细粒度: 更多的并发,但是处
2019-11-28T12:37:00Z
2019-11-28T12:37:00Z
Howardwang
https://www.cnblogs.com/leyang2019/
【摘要】Lecture 02 Infrastructure: RPC & threads 一、多线程挑战 共享数据: 使用互斥信号量、或者避免共享 线程间协作: 使用channels 或者 waitgroup 来等待所有map线程结束 并发粒度: 粗粒度: 简单,但是并发性不高 细粒度: 更多的并发,但是处 <a href="https://www.cnblogs.com/leyang2019/p/11953575.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leyang2019/p/11944519.html
MIT6.824食用过程 - Howardwang
MIT6.824食用过程 Lab1 MapReduce 一、介绍 本实验使用Go语言构建一个mapreduce库,以及一个容错的分布式系统。第一部分完成一个简单的mapreduce程序,第二部分写一个提交到mapreduce workers 的master 并且要能够处理workers 的错误。 库
2019-11-27T10:39:00Z
2019-11-27T10:39:00Z
Howardwang
https://www.cnblogs.com/leyang2019/
【摘要】MIT6.824食用过程 Lab1 MapReduce 一、介绍 本实验使用Go语言构建一个mapreduce库,以及一个容错的分布式系统。第一部分完成一个简单的mapreduce程序,第二部分写一个提交到mapreduce workers 的master 并且要能够处理workers 的错误。 库 <a href="https://www.cnblogs.com/leyang2019/p/11944519.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leyang2019/p/11913251.html
go 食用指南 - Howardwang
Golang高效食用秘籍 一、关于构建 1.1 go环境变量 $ go env // 查看go 的环境变量 其中 GOROOT 是golang 的安装路径 GOPATH 是go命令依赖的一个环境变量 可以理解为工作目录 1.2 go的整体开发目录 变量声明 打印 格式化输出 循环 基本类型 注释 标
2019-11-22T10:18:00Z
2019-11-22T10:18:00Z
Howardwang
https://www.cnblogs.com/leyang2019/
【摘要】Golang高效食用秘籍 一、关于构建 1.1 go环境变量 $ go env // 查看go 的环境变量 其中 GOROOT 是golang 的安装路径 GOPATH 是go命令依赖的一个环境变量 可以理解为工作目录 1.2 go的整体开发目录 变量声明 打印 格式化输出 循环 基本类型 注释 标 <a href="https://www.cnblogs.com/leyang2019/p/11913251.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leyang2019/p/11883654.html
推荐系统(一)初识推荐 - Howardwang
推荐系统之初识 一、 什么是推荐系统 推荐系统诞生的背景是信息过载。面对互联网海量的信息,比如:新闻、电影、图书、音乐,我们常常不知道怎么找到符合自己口味的信息。也许你可以通过 分类目录 一级一级地定位,或者你知道这部电影相关的信息通过输入到 搜索引擎 来查找,还有一种办法就是网站知道你的口味,给你
2019-11-18T09:39:00Z
2019-11-18T09:39:00Z
Howardwang
https://www.cnblogs.com/leyang2019/
【摘要】推荐系统之初识 一、 什么是推荐系统 推荐系统诞生的背景是信息过载。面对互联网海量的信息,比如:新闻、电影、图书、音乐,我们常常不知道怎么找到符合自己口味的信息。也许你可以通过 分类目录 一级一级地定位,或者你知道这部电影相关的信息通过输入到 搜索引擎 来查找,还有一种办法就是网站知道你的口味,给你 <a href="https://www.cnblogs.com/leyang2019/p/11883654.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leyang2019/p/11770615.html
头条面试题. 链表排序(奇偶链表) - Howardwang
题目要求: list奇数位升序,偶数位降序,让链表变成升序的 比如: 1 8 3 6 5 4 7 2 9 变成 1 2 3 4 ... 拆分链表 代码:
2019-10-31T05:07:00Z
2019-10-31T05:07:00Z
Howardwang
https://www.cnblogs.com/leyang2019/
【摘要】题目要求: list奇数位升序,偶数位降序,让链表变成升序的 比如: 1 8 3 6 5 4 7 2 9 变成 1 2 3 4 ... 拆分链表 代码: <a href="https://www.cnblogs.com/leyang2019/p/11770615.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leyang2019/p/11758059.html
leetcode 2019.10.29 首次破百 - Howardwang
刷题首次破百,记录一下自己成长的历程。 仍在路上,会慢慢变强的~
2019-10-29T04:30:00Z
2019-10-29T04:30:00Z
Howardwang
https://www.cnblogs.com/leyang2019/
【摘要】刷题首次破百,记录一下自己成长的历程。 仍在路上,会慢慢变强的~ <a href="https://www.cnblogs.com/leyang2019/p/11758059.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leyang2019/p/11752418.html
Leetcode 300. 最长上升子序列 - Howardwang
题目要求: 给定一个无序的整数数组,找到其中最长上升子序列的长度。 实例: 输入: [10,9,2,5,3,7,101,18] 输出: 4 解释: 最长的上升子序列是 [2,3,7,101],它的长度是 4。 动态规划: 分析 其中dp[i] 代表以第i个元素为结尾的上升子序列的最长长度 状态转移方
2019-10-28T07:09:00Z
2019-10-28T07:09:00Z
Howardwang
https://www.cnblogs.com/leyang2019/
【摘要】题目要求: 给定一个无序的整数数组,找到其中最长上升子序列的长度。 实例: 输入: [10,9,2,5,3,7,101,18] 输出: 4 解释: 最长的上升子序列是 [2,3,7,101],它的长度是 4。 动态规划: 分析 其中dp[i] 代表以第i个元素为结尾的上升子序列的最长长度 状态转移方 <a href="https://www.cnblogs.com/leyang2019/p/11752418.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leyang2019/p/11750790.html
Leetcode 674. 最长连续递增序列 - Howardwang
题目要求: 给定一个未经排序的整数数组,找到最长且连续的的递增序列。 输入: [1,3,5,4,7] 输出: 3 解释: 最长连续递增序列是 [1,3,5], 长度为3。 尽管 [1,3,5,7] 也是升序的子序列, 但它不是连续的,因为5和7在原数组里被4隔开。 代码: 题解: 采用一个数组保存每
2019-10-28T02:27:00Z
2019-10-28T02:27:00Z
Howardwang
https://www.cnblogs.com/leyang2019/
【摘要】题目要求: 给定一个未经排序的整数数组,找到最长且连续的的递增序列。 输入: [1,3,5,4,7] 输出: 3 解释: 最长连续递增序列是 [1,3,5], 长度为3。 尽管 [1,3,5,7] 也是升序的子序列, 但它不是连续的,因为5和7在原数组里被4隔开。 代码: 题解: 采用一个数组保存每 <a href="https://www.cnblogs.com/leyang2019/p/11750790.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leyang2019/p/11750048.html
2019.10.27 头条面试准备 - Howardwang
2019.10.27 头条面试准备 个人简历 2019.06 至今上海华为开发工程师 实习部门:5G开发部 项目:网站开发、运维开发、数据处理 2019.06至今华为实习 Python+Django+Javascript+Nginx+rabbitMQ+ELK 基于 Django 框架使用 Pytho
2019-10-27T16:25:00Z
2019-10-27T16:25:00Z
Howardwang
https://www.cnblogs.com/leyang2019/
【摘要】2019.10.27 头条面试准备 个人简历 2019.06 至今上海华为开发工程师 实习部门:5G开发部 项目:网站开发、运维开发、数据处理 2019.06至今华为实习 Python+Django+Javascript+Nginx+rabbitMQ+ELK 基于 Django 框架使用 Pytho <a href="https://www.cnblogs.com/leyang2019/p/11750048.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leyang2019/p/11750027.html
Leetcode 206. 反转链表 - Howardwang
题目要求: 输入: 1 2 3 4 5 NULL 输出: 5 4 3 2 1 NULL 方法一: 使用三个指针用来保存下一个节点,当前节点 和前一个节点。 方法二: 递归用的很巧妙,对于链表的题目多了一种解题思路。不过要控制好边界情况。
2019-10-27T16:15:00Z
2019-10-27T16:15:00Z
Howardwang
https://www.cnblogs.com/leyang2019/
【摘要】题目要求: 输入: 1 2 3 4 5 NULL 输出: 5 4 3 2 1 NULL 方法一: 使用三个指针用来保存下一个节点,当前节点 和前一个节点。 方法二: 递归用的很巧妙,对于链表的题目多了一种解题思路。不过要控制好边界情况。 <a href="https://www.cnblogs.com/leyang2019/p/11750027.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leyang2019/p/11749959.html
Leetcode 94. 二叉树的中序遍历 - Howardwang
二叉树中序遍历 递归实现: 非递归实现。 分析: 1,使用堆栈作为存储结构 2, 当节点不为空或者堆栈,每次根据给定节点对其左子树进行入栈。 3,出栈,并且保存节点值,然后将右节点赋给当前节点(不用判断是否为空,若为空,刚好不用进行左节点遍历的步骤)
2019-10-27T15:51:00Z
2019-10-27T15:51:00Z
Howardwang
https://www.cnblogs.com/leyang2019/
【摘要】二叉树中序遍历 递归实现: 非递归实现。 分析: 1,使用堆栈作为存储结构 2, 当节点不为空或者堆栈,每次根据给定节点对其左子树进行入栈。 3,出栈,并且保存节点值,然后将右节点赋给当前节点(不用判断是否为空,若为空,刚好不用进行左节点遍历的步骤) <a href="https://www.cnblogs.com/leyang2019/p/11749959.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leyang2019/p/11727619.html
JAVA基础 - Howardwang
JAVA面试准备 String、StringBuffer、StringBuilder的区别,怎么理解String的不变性 == 和 equals的区别,重写equals() 和 不重写 hashCode()会发生什么 java io hashmap 和 hash table区别 hashmap怎么解
2019-10-23T09:32:00Z
2019-10-23T09:32:00Z
Howardwang
https://www.cnblogs.com/leyang2019/
【摘要】JAVA面试准备 String、StringBuffer、StringBuilder的区别,怎么理解String的不变性 == 和 equals的区别,重写equals() 和 不重写 hashCode()会发生什么 java io hashmap 和 hash table区别 hashmap怎么解 <a href="https://www.cnblogs.com/leyang2019/p/11727619.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leyang2019/p/11727536.html
Leetcode 207. 课程表 - Howardwang
题目要求: 现在你总共有 n 门课需要选,记为 到 。 在选修某些课程之前需要一些先修课程。 例如,想要学习课程 0 ,你需要先完成课程 1 ,我们用一个匹配来表示他们: 给定课程总量以及它们的先决条件,判断是否可能完成所有课程的学习? 示例: 算法: 1. 构建:统计入度indegree,使用邻接
2019-10-23T09:23:00Z
2019-10-23T09:23:00Z
Howardwang
https://www.cnblogs.com/leyang2019/
【摘要】题目要求: 现在你总共有 n 门课需要选,记为 到 。 在选修某些课程之前需要一些先修课程。 例如,想要学习课程 0 ,你需要先完成课程 1 ,我们用一个匹配来表示他们: 给定课程总量以及它们的先决条件,判断是否可能完成所有课程的学习? 示例: 算法: 1. 构建:统计入度indegree,使用邻接 <a href="https://www.cnblogs.com/leyang2019/p/11727536.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/leyang2019/p/11696110.html
LeetCode. 不同路径 - Howardwang
题目要求: 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。 问总共有多少条不同的路径? 示例: 输入: m = 3, n = 2 输出: 3 解释: 从左上角
2019-10-17T17:17:00Z
2019-10-17T17:17:00Z
Howardwang
https://www.cnblogs.com/leyang2019/
【摘要】题目要求: 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。 问总共有多少条不同的路径? 示例: 输入: m = 3, n = 2 输出: 3 解释: 从左上角 <a href="https://www.cnblogs.com/leyang2019/p/11696110.html" target="_blank">阅读全文</a>