Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/go/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Golang查找阵列中的峰值_Go_Find_Position_Solution - Fatal编程技术网

使用Golang查找阵列中的峰值

使用Golang查找阵列中的峰值,go,find,position,solution,Go,Find,Position,Solution,我正试图找到数组的峰值。我已经看过一些解决这个问题的教程,但是没有使用golang的。我的问题是,当这个数组中有8,8个值的平台时:[13,9,-2,-5,8,8,14,-2,-3]返回不正确的峰值。预计峰值应为14 我从这个算法开始: 类型post结构{ 位置[]整数 峰值[]整数 } func PickPeaks(数组[]int)PosPeaks{ 向量p峰值 如果len(数组)==0{ 返回p } //构建一个差异数组,该数组指示 //第i个元素和第i+1个元素。如果正变化为+1,则为0

我正试图找到数组的峰值。我已经看过一些解决这个问题的教程,但是没有使用golang的。我的问题是,当这个数组中有8,8个值的平台时:[13,9,-2,-5,8,8,14,-2,-3]返回不正确的峰值。预计峰值应为14

我从这个算法开始:

类型post结构{
位置[]整数
峰值[]整数
}
func PickPeaks(数组[]int)PosPeaks{
向量p峰值
如果len(数组)==0{
返回p
}
//构建一个差异数组,该数组指示
//第i个元素和第i+1个元素。如果正变化为+1,则为0
//无变化,如果为负变化,则为-1
差异:=[]整数{}
对于i:=0;i
你所说的峰值是指如果你认为阵列是高度图?为什么13在这里不是一个峰值?数组的第一个和最后一个都不算作峰值。在这种情况下,峰值的定义是什么?也许你可以告诉我们为什么你的代码不起作用,如果你认为数组是一个高度图,那么期望的峰值是什么?为什么13在这里不是一个峰值?数组的第一个和最后一个都不算峰值。在这个上下文中,峰值的定义是什么?也许你可以告诉我们为什么你的代码不工作,期望值是什么