zoukankan      html  css  js  c++  java
  • c++全排列

    一、概念

      从n个不同元素中任取m(m≤n)个元素,按照一定的顺序排列起来,叫做从n个不同元素中取出m个元素的一个排列。当m=n时所有的排列情况叫全排列。如果这组数有n个,那么全排列数为n!个。

      比如a,b,c的全排列一共有3!= 6 种 分别是{a, b, c}、{a, c, b}、{b, a, c}、{b, c, a}、{c, a, b}、{c, b, a}。

    二、常用操作

      1.头文件

    #include <algorithm>

      2.使用方法

      

      下排列next_permutation(arr,arr+n);如果说arr不存在下一个排列,那么它将返回0,否者返回1,并更新数组

      上排列prev_permutation(arr,arr+n):同理.......

    .函数功能: 返回值为bool类型,当当前序列不存在下一个排列时,函数返回false,否则返回true,排列好的数在数组中存储

    注意:在使用前需要对欲排列数组按升序排序,否则只能找出该序列之后的全排列数。
        比如,如果数组num初始化为2,3,1,那么输出就变为了:{2 3 1} {3 1 2} {3 2 1}

  • 相关阅读:
    2016工作总结与反思
    JSP 标准标签库(JSTL)
    JQuery遍历CheckBox踩坑记
    JAVA中按照""截取字符串
    file上传图片功能
    List转化为Map
    Map转化为List
    对JAVA的LIST进行排序
    根据制定ID查询信息
    制定查询条数
  • 原文地址:https://www.cnblogs.com/Accepting/p/11222799.html
Copyright © 2011-2022 走看看