#大二上数据结构#输出全部子集

上次作业忘了写别的方法,非递归和直接调用函数。

这次的作业,用c++输出全部子集。想了想,自己还是gg了,查了查,有两种方法。

方法一:用映射,bool数组,0  1分别代表该元素存在否(集合的无序性),大佬程序:点击打开链接  ,然后溜了溜了看程序去了……

                1.看见cin.get()这个函数很奇怪,查了下,地址;点击打开链接      这个方法我好像理解了,写个代码试试……

                2.template<class T>  模板,地址:点击打开链接

                3.fun()操作函数一定要放在main入口之前,否则在main中找不到。

原作者貌似有笔误的地方,直接运行不对,也可能是我的问题,改了改终于成功了。

利用每个元素的特点标记数组


 方法二:没悟出来怎么个意思 ,先甩地址:点击打开链接          这么貌似是一般考虑递归的做法,想要求三个元素的子集,先求后两个元素的子集,先求后一个元素的子集。

              1.单引号和双引号一直没懂,地址:点击打开链接       就是字符和字符串的区别  再看这里:点击打开链接  

……………………………………………………………………………………我是还没看懂的分割线,先去做别的…………………………………………………………

照着大佬的程序改对了,但是各个地方的细节还是有点懵,我觉得可能是它需要双向地考虑而我一直是单线单向考虑的……

哈哈哈哈哈哈懂了!!!!两天断断续续地想,终于懂了!!!而且喜欢的太太正在高效率填坑,美滋滋!!!!

j<2是要输出两个,为什么输出两个呢,是因为下次的“总集合”是去掉最后一个得到!




又看见一个大佬的程序,地址:点击打开链接  第一个增量的,貌似只能用于递增的数组……


先这样,大佬去帮我看新的做法了,先把作业交上。

 

 


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值