4. 寻找两个正序数组的中位数

题目描述

给定两个大小为 m 和 n 的正序(从小到大)数组 nums1 和 nums2。
请你找出这两个正序数组的中位数,并且要求算法的时间复杂度为 O(log(m + n))。
你可以假设 nums1 和 nums2 不会同时为空。

示例

nums1 = [1, 3]
nums2 = [2]

则中位数是 2.0
示例 2:

nums1 = [1, 2]
nums2 = [3, 4]

则中位数是 (2 + 3)/2 = 2.5

3. 无重复字符的最长子串

题目描述

给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。

示例

输入: "abcabcbb"
输出: 3
解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。
示例 2:

输入: "bbbbb"
输出: 1
解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。
示例 3:

输入: "pwwkew"
输出: 3
解释: 因为无重复字符的最长子串是 "wke",所以其长度为 3。
  请注意,你的答案必须是 子串 的长度,"pwke" 是一个子序列,不是子串。

2. 两数相加

题目描述

给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。
如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。
您可以假设除了数字 0 之外,这两个数都不会以 0 开头。

示例

输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)  
输出:7 -> 0 -> 8
原因:342 + 465 = 807

1. 两数之和

题目描述

给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。
你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。

示例

给定 nums = [2, 7, 11, 15], target = 9  
因为 nums[0] + nums[1] = 2 + 7 = 9
所以返回 [0, 1]

Nginx location 匹配规则

匹配命令

~   正则匹配,区分大小写
~* 正则匹配,不区分大小写
= 普通字符精确匹配,如果找到,停止搜索
^~ 普通字符匹配(如果该选项匹配,只匹配该选项,一般用来匹配目录)
/ 通用匹配,如果没有其它匹配,任何请求都会匹配到
@ 定义命名的 location,使用在内部定向时,例如:error_page、try_files

匹配优先级(与在配置文件中的顺序无关)

1. 精确匹配 ”=“ 会第一个被处理。如果发现精确匹配,停止搜索。
2. 匹配最长的规则,如果这个规则带有 ^~ 修饰符,停止搜索。
3. 存储 #2 的最长匹配规则,然后按在配置文件中的定义顺序匹配正则表达,若匹配到正则表达式,停止搜索。
4. 若没有匹配到正则表达式,使用存储的 #2 的最长匹配。

Nginx 超时配置

client_header_timeout

客户端向服务端发送一个完整的 request header 的超时时间。如果客户端在指定时间内没有发送一个完整的 request header,Nginx 返回 HTTP 408(Request Timed Out)。

Defines a timeout for reading client request header. If a client does not transmit the entire header within this time,
the 408 (Request Time-out) error is returned to the client.


CSRF 简介

CSRF 是什么?

CSRF(Cross-site Request Forgery)跨站请求伪造,缩写为:CSRF/XSRF。 也被称为:one click attack/session riding。