修改部分描述,添加必要的标点符号,补充代码超链接 (#804)

This commit is contained in:
Jck
2021-10-25 23:34:42 +08:00
committed by GitHub
parent d5578df00a
commit 39dbdb7094
100 changed files with 433 additions and 414 deletions

View File

@@ -1,6 +1,6 @@
# 11.7 第一个例子:使用 Sorter 接口排序
一个很好的例子是来自标准库的 `sort` 包,要对一组数字或字符串排序,只需要实现三个方法:反映元素个数的 `Len()`方法、比较第 `i``j` 个元素的 `Less(i, j)` 方法以及交换第 `i``j` 个元素的 `Swap(i, j)` 方法。
一个很好的例子是来自标准库的 `sort` 包,要对一组数字或字符串排序,只需要实现三个方法:反映元素个数的 `Len()` 方法、比较第 `i``j` 个元素的 `Less(i, j)` 方法以及交换第 `i``j` 个元素的 `Swap(i, j)` 方法。
排序函数的算法只会使用到这三个方法(可以使用任何排序算法来实现,此处我们使用冒泡排序):
@@ -202,17 +202,17 @@ b). 定义一个新接口 `PeriInterface`,它有一个 `Perimeter` 方法。
**练习 11.6** point_interfaces.go
继续 10.3 中的练习 point_methods.go定义接口 `Magnitude`,它有一个方法 `Abs()`。让 `Point``Point3``Polar` 实现此接口。通过接口类型变量使用方法做point.go中同样的事情。
继续 10.3 中的练习 point_methods.go定义接口 `Magnitude`,它有一个方法 `Abs()`。让 `Point``Point3``Polar` 实现此接口。通过接口类型变量使用方法做 point.go 中同样的事情。
**练习 11.7** float_sort.go / float_sortmain.go
**练习 11.7** float_sort.go/float_sortmain.go
类似11.7和示例11.3/4定义一个包 `float64`,并在包里定义类型 `Float64Array`,然后让它实现 `Sorter` 接口用来对 `float64` 数组进行排序。
类似 11.7 和示例 11.3/4定义一个包 `float64`,并在包里定义类型 `Float64Array`,然后让它实现 `Sorter` 接口用来对 `float64` 数组进行排序。
另外提供如下方法:
- `NewFloat64Array()`创建一个包含25个元素的数组变量参考10.2
- `NewFloat64Array()`:创建一个包含 25 个元素的数组变量参考10.2
- `List()`:返回数组格式化后的字符串,并在 `String()` 方法中调用它,这样就不用显式地调用 `List()` 来打印数组参考10.7
- `Fill()`创建一个包含10个随机浮点数的数组参考4.5.2.6
- `Fill()`:创建一个包含 10 个随机浮点数的数组参考4.5.2.6
在主程序中新建一个此类型的变量,然后对它排序并进行测试。