Carlos9986

Results 4 comments of Carlos9986

作者你好,在step内部使用的好像不是插入排序,更像是冒泡排序,代码对比如下,请指教: ``` package main import "fmt" // 增量序列折半的希尔排序 func ShellSort(list []int) { // 数组长度 n := len(list) // 每次减半,直到步长为 1 for step := n / 2; step >= 1; step...

作者你好,想问这里if的作用是什么?是否可以省略?因为去掉if不影响测试结果,代码如下: ``` package main import "fmt" func InsertSort(list []int) { n := len(list) // 进行 N-1 轮迭代 for i := 1; i = 0 && deal < list[j]; j-- {...

菜鸡提问:关于提前结束循环的控制变量didSwap的位置及功能的问题: 1.原代码中didSwap的位置代表的功能:查看第一轮交换是否发生交换行为,如果发生就继续进行冒泡排序,如果没有发生,说明原序列是排序好的,就结束循环。 2.改变didSwap的位置,可以检查每一轮交换中是否发生交换行为,一旦没有,则说明已经排序好了,就立即结束循环。 代码如下: ``` package main import "fmt" func BubbleSort(list []int) { n := len(list) // 在一轮中有没有交换过 didSwap := false // 进行 N-1 轮迭代 for i := n -...

### 按照东哥的解法,写的 **Golang** 版本,但是时间和内存分别击败 28%、10% 的 Go 提交者,有无懂哥指点为什么?代码如下: ``` func maxSumBST(root *TreeNode) int { var MaxSum int =0 // 定义全局变量存储最大值 var traverse func(*TreeNode) [4]int traverse = func (node *TreeNode) (res...