小编use*_*522的帖子

给定一个随机顺序的整数数组,你必须找到最小数量的交换,将其转换为循环排序数组

如果以随机顺序给出数组,则必须输出转换为循环排序数组所需的最小交换数.

例如,给出的阵列是3 5 4 2 1

所以第一次交换将是5 < - > 4结果:3 4 5 2 1秒交换将是2 < - > 1结果:3 4 5 1 2(最终)

输出:2

我无法理解这个问题背后的逻辑.

添加更多: 只能在相邻元素之间进行交换,数字在1到N之间

algorithm dynamic-programming bubble-sort data-structures

9
推荐指数
2
解决办法
2513
查看次数

Json Schema 对 Value 字段的限制,可以是 Integer 或 String

我的代码中目前有一个 JSON 模式

 {
    'type' => 'object', 'required' => true, 'additionalProperties' => false,
    'properties' => {
        'variables' => {
            'type' => 'array', 'required' => true,
            'items' => {
                'type' => 'object', 'required' => true, 'additionalProperties' => false,
                'properties' => {
                    'variable' => { 'type' => 'string', 'required' => true },
                    'value' => { 'required' => true }
                    }
                }
            }
        }
}
Run Code Online (Sandbox Code Playgroud)

我试图在值字段上进行一些额外的验证。例如,如果是字符串,则长度不应超过 64 个字符,如果是整数,则值应在整数限制内。我应该如何定义这个模式。

javascript ruby json ruby-on-rails-3

4
推荐指数
1
解决办法
8629
查看次数