Golang - 流程控制语句

for循环 1. 标准的三段式 for 循环 C++ 语言: for (int i = 0; i < 10; ++i) { // C++需要括号 std::cout << i << std::endl; } Go 语言: // 注意:没有圆括号 (),但花括号 {} 是必须的 for i := 0; i < 10; i++ { fmt.Println(i) } // 变量 i 的作用域仅限于这个 for 循环内部 关键不同点: 1. 无圆括号…

Golang - 包,变量与函数

Hello World package main import "fmt" func main() { fmt.Println("Hello, 世界") } 包 每个 Go 程序都由包构成。 程序从 main 包开始运行。 本程序通过导入路径 "fmt" 和 "math/rand" 来使用这两个包。 按照约定,包名与导入路径的最后一个元素一致。例如,"math/rand" 包中的源码均以 package rand 语句开始。 “导入路径”和“包名”的关系。 * 导入路径 (Import…

976. 三角形的最大周长

题目 给定由一些正数(代表长度)组成的数组 nums ,返回 由其中三个长度组成的、面积不为零的三角形的最大周长 。如果不能形成任何面积不为零的三角形,返回 0。 示例 1: 输入:nums = [2,1,2] 输出:5 解释:你可以用三个边长组成一个三角形:1 2 2。 示例 2: 输入:nums = [1,2,1,10] 输出:0 解释: 你不能用边长 1,1,2 来组成三角形。 不能用边长 1,1,10 来构成三角形。 不能用边长 1、2 和…

812. 最大三角形面积

题目 给你一个由 X-Y 平面上的点组成的数组 points ,其中 points[i] = [xi, yi] 。从其中取任意三个不同的点组成三角形,返回能组成的最大三角形的面积。与真实值误差在 10-5 内的答案将会视为正确答案**。** 示例 1: 输入:points = [[0,0],[0,1],[1,0],[0,2],[2,0]] 输出:2.00000 解释:输入中的 5 个点如上图所示,红色的三角形面积最大。 示例 2: 输入:points = [[1,0],[0,0],[0,1]] 输出:0.50000…

611. 有效三角形的个数

题目 给定一个包含非负整数的数组 nums ,返回其中可以组成三角形三条边的三元组个数。 示例 1: 输入: nums = [2,2,3,4] 输出: 3 解释:有效的组合是: 2,3,4 (使用第一个 2) 2,3,4 (使用第二个 2) 2,2,3 示例 2: 输入: nums = [4,2,3,4] 输出: 4 提示: * 1 <= nums.length <= 1000 * 0 <= nums[i]…

120. 三角形最小路径和

题目 给定一个三角形 triangle ,找出自顶向下的最小路径和。 每一步只能移动到下一行中相邻的结点上。相邻的结点 在这里指的是 下标 与 上一层结点下标 相同或者等于 上一层结点下标 + 1 的两个结点。也就是说,如果正位于当前行的下标 i ,那么下一步可以移动到下一行的下标 i或 i + 1 。 示例 1: 输入:triangle = [[2],[3,4],[6,5,7],[4,1,8,3]] 输出:11 解释:如下面简图所示: 2 3 4 6 5 7 4 1 8 3 自顶向下的最小路径和为…

166. 分数到小数

题目 给定两个整数,分别表示分数的分子 numerator 和分母 denominator,以 字符串形式返回小数 。 如果小数部分为循环小数,则将循环的部分括在括号内。 如果存在多个答案,只需返回 任意一个 。 对于所有给定的输入,保证 答案字符串的长度小于 10^4 。 示例 1: 输入:numerator = 1, denominator = 2 输出:"0.5" 示例 2: 输入:numerator = 2, denominator = 1 输出:"2" 示例 3: 输入:numerator = 4, denominator = 333 输出:"…

165. 比较版本号

题目 给你两个 版本号字符串 version1 和 version2 ,请你比较它们。版本号由被点 '.' 分开的修订号组成。修订号的值 是它 转换为整数 并忽略前导零。 比较版本号时,请按 从左到右的顺序 依次比较它们的修订号。如果其中一个版本字符串的修订号较少,则将缺失的修订号视为 0。 返回规则如下: * 如果 _version1_ < _version2_ 返回 -1, * 如果 _version1_ > _version2_ 返回 1, * 除此之外返回 0。 示例 1: 输入:version1 = "1.2", version2 = "1.10"…