1、算法思路

真值组合是全排列问题,能用递归的思想解决,关键是怎么写出递归的程序
    由全排列思想可知,n个bool变量可以转化为后i个bool固定的值和前n-i个bool变量的全排列,例如:第n个为真,前面n-1个bool变量的全排列。由此递推,如果能解决n-1个bool变量的全排列问题,那么就能解决n个bool变量的全排列问题。

2、源代码

#include <iostream>using namespace std;void boolcombination(bool *bc,int sbegin,int send)   //布尔真值组合
{if(sbegin == send)  //递归到递归出口{for(int i = 0; i < send; i++)if(bc[i])cout << "TRUE ";elsecout << "FALSE ";cout << endl;}else    //两种情况,第一种第i个为真,然后进行递归,第二种第i个为假,然后进行递归{bc[sbegin] = !bc[sbegin]; //求反boolcombination(bc,sbegin + 1,send);//递归求全排序bc[sbegin] = !bc[sbegin]; //求反boolcombination(bc,sbegin + 1,send);//递归求全排序}
}int main()
{bool bc[100] = {true,false,true};boolcombination(bc,0,3);return 0;
}

布尔(bool)全排列相关推荐

  1. 布尔(BOOL)代数及其运算

    布尔(BOOL)代数以及运算 简介:二进制值是计算机编码.存储和操作信息的核心,所以围绕数值0和1的研究已经演化出了丰富的数学知识体系.这起源于1850年前后乔治·布尔(George Boole, 1 ...

  2. Python基础——变量、常量、数字类型、四 列表list、五 字典dict、六 布尔bool、垃圾回收机制、用户交互、运算符、流程控制

    文章目录 变量 一 引入 一.什么是变量? 二.为什么要有变量? 三.怎么使用变量(先定义.后使用) 3.1.变量的定义与使用 3.2.变量名的命名规范 3.3.变量名的命名风格 3.4.变量值的三大 ...

  3. 布尔(bool)值需注意事项

    布尔值就两个值真或假,其中的假代表的是0,其他任何非零的数都代表真. 布尔值占一个字节(八个二进制位) #include<stdio.h> int main() {bool x = 0; ...

  4. C++基础知识 - 布尔(bool)类型

    C++语言中,有两种bool(布尔)类型的表示方式: 直接使用bool类型 bool x = true;bool类型, 只有两个值: true falsecout << true < ...

  5. python3 中 布尔 bool 类型转换

    在python中,以下数值会被认为是False: 为0的数字,包括0,0.0 空字符串,包括","" 表示空值的None 空集合,包括(),[],{} 其他的值都认为是T ...

  6. C++中的bool类型

    学过C语言的程序员应该清楚,在C语言中,是没有bool这个基础类型的.在C语言中,当我们要表示真或假的时候,都是定义一个非bool类型来使用的. 在C++中,加入了布尔bool这种基础的类型,用tru ...

  7. 基本数据结构(int,布尔,字符串,列表)

    回顾: T='我是%s,进度100%%'%('姓名') 字符串格式化内想要输出%,需要写两个%% ================今日内容================ - 整数    int类   ...

  8. python前端基础知识总结 及部分练习题

    python前端基础知识总结 知识总结 认识Python 发展历史 版本选择 python2.7是python2的最后一个版本,到2020年将不再维护 python3.6是python3最新的版本,是 ...

  9. python常用变量名_python基础知识整理

    Python Python开发 Python语言 python基础知识整理 序言:本文简单介绍python基础知识的一些重要知识点,用于总结复习,每个知识点的具体用法会在后面的博客中一一补充程序: 一 ...

最新文章

  1. Windows 活动目录(AD)服务器系统升级到2012之活动目录角色迁移(三)
  2. Ubuntu 11.10更新源地址列表更改方法及下载
  3. 基于 MVP 的 Android 组件化开发框架实践
  4. python算法与数据结构-冒泡排序算法
  5. 几款强大的 Pandas 数据探索工具,推荐收藏使用
  6. java程序员的发展之路和职业规划
  7. WebForm-博客园-1.0-账户模块(Passport)-登录与注册
  8. 用Proteus学习51单片机之I2C(IIC)总线
  9. 【BZOJ1483】【codevs2335】【hdu5997】梦幻布丁+加强版,LCA+主席树
  10. 给员工授予svn相关权限
  11. Kotlin 我的第一个kotlin程序【Android Studio】
  12. 亭台六七座,八九十枝花——python正则表达
  13. android 颜色资源
  14. 串口485接法图_史上最全的RS485串口通讯的详细讲解
  15. 大话西游服务器维护多长时间,《大话西游3》2010-9-21服务器停机维护公告(二)...
  16. 天数最少的年份_农历辛丑年仅有354天是怎么回事 平年比闰年少几天
  17. PS 2019 Mac版 自学入门系列(三)——插入对象
  18. js计算日期差;js计算天数差
  19. wechat4j开发-菜单创建
  20. 【文学文娱】《屌丝逆袭》-出任CEO、迎娶白富美、走上人生巅峰

热门文章

  1. BGP——ORF+条件路由过滤(讲解+配置)
  2. Android开发与Sequoyah的安装问题
  3. 前端技术基础(一):浏览器相关
  4. 函数式编程 -- 函数组合
  5. 【Python】jieba库的使用
  6. C# 8.0 的新特性概览和讲解
  7. sqlmap源码阅读系列init中的_cleanupOptions
  8. 比特币程序_比特币如何运作? 我建立了一个应用程序向您展示。
  9. reddit_Reddit如何大规模构建功能:采访其工程副总裁
  10. c++ 正则表达式_Python教程:进程和线程amp;正则表达式