• 关于错排


    错排详解

    一、        错排原理的分析

    第一步:将编号为1的元素放在第2到第n个位置之上:有n-1种方法

    第二步:错排余下的n-1个元素

    1、若1号元素划等号在第k个位置,第二步就是把K这个元素排好(因为K元素相对应的位置上已经被1给占领了)。如果恰好K这个元素也排在了1的位置上,那么接下来的n-2个元素在与它们的编号相等的位置上再进行错排:有f(n-2)种方法

    2、若K这个元素恰巧没排在第1个位置上。这时可将第1个位置“看成”第K个位置,于是就还余下n-1个元素的错排,有f(n-1)种方法。

     

    二、错排情况的公式:

    根据乘法原理可以得到有N个元素时的错排情况公式有:(n-1)*[(f-2)+(f-1)]  [n>2]

     

    三、错排原理的模拟:信封

    1封信封   不存在着错排的情况:所有情况为0

     

    2封信封   只有如下一种情况:

     

    3封信封  两种情况

     

    4封信封

    对1 号信封做特殊处理,1号信封不放在1号位置的可能有3种情况。即(4-1)

    然后再分情况讨论:

    1、若1号信封刚好放在3的位置上,而3号信封又刚好放在1的位置上,那么就只能有2、4的错排也就是2只能放在4  4只能放在2上也就是f(n-2)也就是两个元素的错排情况:f(4-2)=1[由上面的分析得出]情况:

    2、若1号信封放在3的位置上,而3号信封不知道放在哪,也就是还剩下3封信封的错排情况:f(3)的情况也就是3封信封的错排情况

     

    于是得到:4封信封的错排方法有:3*(1+2)=9种

    根据乘法原理:(n-1)*[(f-2)+(f-1)]  [n>2]

  • 相关阅读:
    机器学习入门
    elixir 高可用系列
    elixir 高可用系列(五) Supervisor
    elixir 高可用系列(四) Task
    elixir 高可用系列(三) GenEvent
    golang 值得注意的地方(2则)
    elixir 高可用系列(二) GenServer
    elixir 高可用系列(一) Agent
    elixir 入门笔记
    elixir mix 简介
  • 原文地址:https://www.cnblogs.com/pcry/p/5717306.html
Copyright © 2020-2023  润新知