// 数组元素是否有序,升序
// @param arr 待检查数组
// @param length 数组长度
// @return true 为是升序
func isArraySort(arr []int, length int) bool {
	if length == 1 {
		return true
	}else{
		if arr[length - 1] <= arr[length - 2] {
			return false
		}else{
			return isArraySort(arr, length - 1) // 升序
		}
	}
}

单元测试,通过的。

func Test_isArraySort(t *testing.T) {
	type args struct {
		arr   []int
		index int
	}
	tests := []struct {
		name string
		args args
		want bool
	}{
		{
			name: "正确顺序数组",
			args: args{
				arr:   []int{10, 20, 30, 40, 50, 70},
				index: 6, // 数组长度值
			},
			want: true,
		},
		{
			name: "不正确顺序数组",
			args: args{
				arr:   []int{10, 30, 40, 20, 15, 7},
				index: 6,
			},
			want: false,
		},
	}
	for _, tt := range tests {
		t.Run(tt.name, func(t *testing.T) {
			if got := isArraySort(tt.args.arr, tt.args.index); got != tt.want {
				t.Errorf("isArraySort() = %v, want %v", got, tt.want)
			}
		})
	}
}