05 2022 档案
摘要:docker部署nginx+tomcat实现负载均衡 1,部署一台Nginx和三台Tomcat服务器 2,Ngnix需要实现三种策略: 1)轮询; 2)权重,三台服务器的权重为1,3,5; 3)IP Hash。 最终实现的效果是,本地电脑通过网页访问云服务器时,网页能够体现Ngnix三种策略的结果。
阅读全文
摘要:剑指 Offer 40. 最小的k个数 输入整数数组 arr ,找出其中最小的 k 个数。例如,输入4、5、1、6、2、7、3、8这8个数字,则最小的4个数字是1、2、3、4。 思路 方法一:排序 对原数组从小到大排序后取出前 k 个数即可。时间复杂度为O(nlogn) 方法二:堆 用一个大根堆实时
阅读全文
摘要:剑指 Offer 19. 正则表达式匹配 题目 请实现一个函数用来匹配包含'. '和''的正则表达式。模式中的字符'.'表示任意一个字符,而''表示它前面的字符可以出现任意次(含0次)。在本题中,匹配是指字符串的所有字符匹配整个模式。例如,字符串"aaa"与模式"a.a"和"abaca"匹配,但与"
阅读全文
摘要:题目 给定两个大小分别为 m 和 n 的正序(从小到大)数组 nums1 和 nums2。请你找出并返回这两个正序数组的 中位数 。 算法的时间复杂度应该为 O(log (m+n)) 。 思路 思路一: 对两个数组进行归并排序,因为两个都是有序的,所以排序的时间复杂度为 O(m + n) 思路二:
阅读全文
摘要:剑指 Offer 53 - I. 在排序数组中查找数字 I 统计一个数字在排序数组中出现的次数。 思路 这题主要考察 lower_bound 和 upper_bound 的使用 upper_bound 减去 lower_bound 就是出现的次数 upper_bound:大于元素的第一个位置 low
阅读全文
摘要:剑指 Offer 52. 两个链表的第一个公共节点 输入两个链表,找出它们的第一个公共节点。 思路 思路一:使用 map 记录已经访问的节点 思路二:使用双指针,可以将空间复杂度将至 O(1) 设 A, B 两个链表,公共节点前的长度分别为 a, b, 公共节点的长度为 c,则 A 的长度为a+c,
阅读全文
摘要:剑指 Offer 51. 数组中的逆序对 求逆序对的例题 思路 求逆序对一般有两种解法:1 是归并排序,2是树状数组,使用树状数组的时候一般需要对数据进行你离散化,而归并排序不需要。 归并排序是在归并的时候进行答案统计,因为归并的时候两个序列都是有序的,所以如果左序列的某一个元素大于右序列的某个元素
阅读全文