上一页 1 ··· 9 10 11 12 13 14 15 16 17 ··· 26 下一页
摘要: 1. JMM的介绍 在上一篇文章中总结了线程的状态转换和一些基本操作,对多线程已经有一点基本的认识了,如果多线程编程只有这么简单,那我们就不必费劲周折的去学习它了。在多线程中稍微不注意就会出现线程安全问题,那么什么是线程安全问题?我的认识是,在多线程下代码执行的结果与预期正确的结果不一致,该代码就是 阅读全文
posted @ 2021-03-01 19:07 Garrett_Wale 阅读(95) 评论(0) 推荐(0) 编辑
摘要: 167. 两数之和 II - 输入有序数组 LeetCode_167 题目描述 方法一:暴力法(使用哈希表) class Solution { public int[] twoSum(int[] numbers, int target) { int len = numbers.length; Has 阅读全文
posted @ 2021-03-01 18:00 Garrett_Wale 阅读(85) 评论(0) 推荐(0) 编辑
摘要: 1. 两数之和 LeetCode_1 题目描述 方法一:暴力法 package com.walegarrett.interview; /** * @Author WaleGarrett * @Date 2021/3/1 12:21 */ /** * 题目描述:给定一个整数数组 nums 和一个整数目 阅读全文
posted @ 2021-03-01 17:42 Garrett_Wale 阅读(112) 评论(0) 推荐(0) 编辑
摘要: 381. O(1) 时间插入、删除和获取随机元素 - 允许重复 LeetCode_381 题目详情 题解分析 代码实现 package com.walegarrett.interview; import java.util.*; /** * @Author WaleGarrett * @Date 2 阅读全文
posted @ 2021-03-01 10:15 Garrett_Wale 阅读(61) 评论(0) 推荐(0) 编辑
摘要: 面试题 一、Hadoop 1.Hadoop面试题总结(一) 2.Hadoop面试题总结(二)——HDFS 3.Hadoop面试题总结(三)——MapReduce 4.Hadoop面试题总结(四)——YARN 5.Hadoop面试题总结(五)——优化问题 二、Zookeeper 1.Zookeeper 阅读全文
posted @ 2021-02-28 20:58 Garrett_Wale 阅读(205) 评论(0) 推荐(0) 编辑
摘要: 题目来源 LeetCode_33 相似题目 33. 搜索旋转排序数组 153. 寻找旋转排序数组中的最小值 154. 寻找旋转排序数组中的最小值 II 题目描述 整数数组 nums 按升序排列,数组中的值 互不相同 。 在传递给函数之前,nums 在预先未知的某个下标 k(0 <= k < nums 阅读全文
posted @ 2021-02-28 20:01 Garrett_Wale 阅读(77) 评论(0) 推荐(0) 编辑
摘要: 40. 组合总和 II LeetCode_40 题目描述 题解分析 此题和 39. 组合总和 + 递归 + 回溯 + 存储路径很像,只不过题目修改了一下。 题解的关键是首先将候选数组进行排序,然后记录每个数的出现次数。 将去重后的数组当成是新的候选数组进行递归搜索。 回溯的时候注意是在最后将相同数字 阅读全文
posted @ 2021-02-27 19:49 Garrett_Wale 阅读(91) 评论(0) 推荐(0) 编辑
摘要: 39. 组合总和 LeetCode_39 题目描述 题解分析 这是一道面试常考题:https://www.nowcoder.com/discuss/582025?source_id=discuss_experience_nctrack&channel=-1 题目考察的是递归搜索,这里使用的方法是回溯 阅读全文
posted @ 2021-02-27 18:36 Garrett_Wale 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 440. 字典序的第K小数字 LeetCode_440 题目描述 方法一:暴力法(必超时) package com.walegarrett.interview; /** * @Author WaleGarrett * @Date 2021/2/25 19:49 */ /** * 题目描述:给定整数 阅读全文
posted @ 2021-02-26 21:41 Garrett_Wale 阅读(129) 评论(0) 推荐(0) 编辑
摘要: 题目来源 LeetCode-121 题目描述 给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。 你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。 返回你可以从这笔交易中获取 阅读全文
posted @ 2021-02-25 19:37 Garrett_Wale 阅读(136) 评论(0) 推荐(0) 编辑
摘要: 206. 反转链表 LeetCode_206 题目详情 解法一:迭代法 package com.walegarrett.interview; /** * @Author WaleGarrett * @Date 2021/2/22 22:30 */ import java.util.List; /** 阅读全文
posted @ 2021-02-23 23:09 Garrett_Wale 阅读(51) 评论(0) 推荐(0) 编辑
摘要: 一、消息模型 点对点 消息生产者向消息队列中发送了一个消息之后,只能被一个消费者消费一次。 发布/订阅 消息生产者向频道发送一个消息之后,多个消费者可以从该频道订阅到这条消息并消费。 发布与订阅模式和观察者模式有以下不同: 观察者模式中,观察者和主题都知道对方的存在;而在发布与订阅模式中,生产者与消 阅读全文
posted @ 2021-02-23 17:30 Garrett_Wale 阅读(109) 评论(0) 推荐(0) 编辑
摘要: 一、负载均衡 集群中的应用服务器(节点)通常被设计成无状态,用户可以请求任何一个节点。 负载均衡器会根据集群中每个节点的负载情况,将用户请求转发到合适的节点上。 负载均衡器可以用来实现高可用以及伸缩性: 高可用:当某个节点故障时,负载均衡器会将用户请求转发到另外的节点上,从而保证所有服务持续可用; 阅读全文
posted @ 2021-02-23 17:18 Garrett_Wale 阅读(251) 评论(0) 推荐(0) 编辑
摘要: 一、分布式锁 在单机场景下,可以使用语言的内置锁来实现进程同步。但是在分布式场景下,需要同步的进程可能位于不同的节点上,那么就需要使用分布式锁。 阻塞锁通常使用互斥量来实现: 互斥量为 0 表示有其它进程在使用锁,此时处于锁定状态; 互斥量为 1 表示未锁定状态。 1 和 0 可以用一个整型值表示, 阅读全文
posted @ 2021-02-23 17:08 Garrett_Wale 阅读(547) 评论(0) 推荐(0) 编辑
摘要: Redis持久化 一、持久化简介 Redis 的数据 全部存储 在 内存 中,如果 突然宕机,数据就会全部丢失,因此必须有一套机制来保证 Redis 的数据不会因为故障而丢失,这种机制就是 Redis 的 持久化机制,它会将内存中的数据库状态 保存到磁盘 中。 持久化发生了什么 | 从内存到磁盘 我 阅读全文
posted @ 2021-02-23 09:39 Garrett_Wale 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 缓存 1. 缓存的基本思想 很多朋友,只知道缓存可以提高系统性能以及减少请求相应时间,但是,不太清楚缓存的本质思想是什么。 缓存的基本思想其实很简单,就是我们非常熟悉的空间换时间。不要把缓存想的太高大上,虽然,它的确对系统的性能提升的性价比非常高。 其实,我们在学习使用缓存的时候,你会发现缓存的思想 阅读全文
posted @ 2021-02-23 09:00 Garrett_Wale 阅读(291) 评论(0) 推荐(0) 编辑
摘要: 题目来源 LeetCode-15 题目描述 给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 _a,b,c ,_使得 a + b + c = 0 ?请你找出所有和为 0 且不重复的三元组。 注意: 答案中不可以包含重复的三元组。 示例 1: 输入: nums = [-1, 阅读全文
posted @ 2021-02-22 22:29 Garrett_Wale 阅读(74) 评论(0) 推荐(0) 编辑
摘要: 题目来源 LeetCode-146 题目描述 实现 LRUCache 类: LRUCache(int capacity) 以 正整数 作为容量 capacity 初始化 LRU 缓存 int get(int key) 如果关键字 key 存在于缓存中,则返回关键字的值,否则返回 -1 。 void 阅读全文
posted @ 2021-02-21 20:20 Garrett_Wale 阅读(70) 评论(0) 推荐(0) 编辑
摘要: 215. 数组中的第K个最大元素 LeetCode-215 另一道类似的第k大元素问题:https://www.cnblogs.com/GarrettWale/p/14386862.html 题目详情 方法一:使用快速排序 package com.walegarrett.interview; /** 阅读全文
posted @ 2021-02-18 21:39 Garrett_Wale 阅读(111) 评论(0) 推荐(0) 编辑
摘要: 计算机从按下电源键到屏幕亮的开机过程-详解 操作系统老师说,平时面试学生或者毕业答辩的时候他都会问这个问题,可见这个问题对于计算机专业的学生来说是如此重要。那么,从打开计算机电源到计算机的屏幕显示,中间经历了哪些过程呢? 启动的英文是boot,来自于一个谚语pull oneself up by on 阅读全文
posted @ 2021-02-18 09:40 Garrett_Wale 阅读(1577) 评论(0) 推荐(0) 编辑
上一页 1 ··· 9 10 11 12 13 14 15 16 17 ··· 26 下一页