Golang

Golang 优雅的终止一个服务

采用常规方式启动一个 Golang http 服务时,若服务被意外终止或中断,即未等待服务对现有请求连接处理并正常返回且亦未对服务停止前作一些必要的处理工作,这样即会造成服务硬终止。这种方式不是很优雅。 参看如下代码,该 http 服务请求 …

阅读更多

LeetCode 55 跳跃游戏

1 题目描述 给定一个非负整数数组,您初始位于数组的第一个位置。 数组中的每个元素,代表您在该位置可以跳跃的最大长度。 请判断您能否抵达数组的最后一个位置。

阅读更多

LeetCode 946 校验栈序列

1 题目描述 给定两个序列pushed与popped,每个序列内的值均是不同的。对于一个空的栈,当前仅当其是有效的push与pop操作序列时返回true。 例子1: 输入:pushed = [1,2,3,4,5], popped = …

阅读更多

LeetCode 807 求保持城市现有天际线的最大增高

1 题目描述 在二维数组grid中,每个值grid[i][j]代表位于此的建筑物高度。我们允许对其中的任意建筑物增长不等的高度。高度0仍为一个有效的建筑物。 增高后的建筑群,从其四个方向来看,必须与之前建筑群的天际线保持一致。城市天际线是从 …

阅读更多

Go 1.9 Release Notes 要点整理

Go 1.9,在1.8发布6个月后如约而至,其是Go 1.x系列的第10个版本。 该版本有两项语言级变化:增加了类型别名支持以及对可能熔断浮点操作实现的定义。 多数变化在工具链、运行时及库的实现上。一如既往,Go 1.9坚持Go 1兼容性准 …

阅读更多

LeetCode 75 颜色排序

1 题目描述 给定一个数组,该数组有N个对象,每个对象被标记为红、白、蓝三种颜色中的某一种。对该对象数组进行排序,使相同颜色的对象连在一起,分别为红色部分,白色部分,蓝色部分。 这里,我们将数字1,2,3分别代表红,白,蓝。 注:请勿使用 …

阅读更多

LeetCode 71 简化路径

1 题目描述 给定一个类Unix绝对路径,请将其简化,换言之,请将其转换为“canonical”路径。 在类Unix文件系统中,“.”代表当前目录,“..”代表移至上层目录。注意返回的简化路径需以“/”开头,而且两个文件夹名称之间须有分隔符 …

阅读更多