生成排列和组合..docx

  1. 1、本文档共8页,其中可免费阅读3页,需付费100金币后方可阅读剩余内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 4、文档侵权举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第四章生成排列和组合生成排列算法一生成集合的个排列基本思想是递归地对集合的个排列的每一个排列通过把插入到首尾和任两个数的中间共个位置产生集合的个排列从而产生个集合的排列算例排列令令表示排列中数的逆序数称为排列的逆序列算法结束生成全部排列算法二生成集合的个排列定义对任一给定整数其上加一个箭头表示移动方向或对于集合的任一个排列其中每一个整数都有一个箭头指出其移动方向若整数的箭头指向与其相邻但比它小的整数称是活动的算法从开始当不存在活动的整数时算法结束求出最大的活动整数交换和它箭头所指的相邻数改变所有

第四章生成排列和组合 4.1生成排列 算法一: (生成集合{1,2,…,n}的n!个排列) 基本思想是递归地对集合 {1,2,…,n-1}的(n-1)!个排列的每一个排列,通过把n插入到首、 尾和任两个数的中间共 n个位置,产生集合{1,2,…,n}的n个排列,从而产生 n (n-1)!=n!个 集合{1,2,…,n}的排列。 算例: n=1: n=2: 排列 1 1 2 2 1 n=3: 1 2 3 3 2 3 1 2 3 2 1 3 1 2 1 3 n=4: 1 2 1 2 4 1 4 2 4 1 2 4 1 3 1 4 3 1 3 4 1 3 3 1 3 1 4 3 4 1 4 3 1

文档评论(0)

sunhongz + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档