当前位置: 首页 > wzjs >正文

大连做网站软件推广普通话的宣传标语

大连做网站软件,推广普通话的宣传标语,域名查询ip网站,网站建设更新不及时文章目录 题目递归实现组合型枚举 常见的搜索的问题包括求解子集、求解组合数、求解排列以及其他的相关的问题下面补充我的关于求解子集和求解排列的另一篇博客 搜索之 排列 与 子集 本章节就来介绍这个 搜索的组合问题组合问题,顾名思义,也就是从从n个…

文章目录

  • 题目
    • 递归实现组合型枚举

  • 常见的搜索的问题包括求解子集、求解组合数、求解排列以及其他的相关的问题
  • 下面补充我的关于求解子集和求解排列的另一篇博客

搜索之 排列 与 子集

  • 本章节就来介绍这个 搜索的组合问题
  • 组合问题,顾名思义,也就是从从n个元素中挑选m个数,在一个组合当中,一个数只能被挑选一次,细分来说,简单来说这个n个元素可以是1-n的数,要是想设置哪一点,也可以是一个集合当中的数,对于组合,当然是里面的数的顺序是不管的,那么区别与这个排列,对应的细节应该如何处理?
    • 实际处理的时候,并不要关注这个是否可以从输入的视角还是从答案的视角,只需关注这个关注这个,初始状态,结束条件,以及到达下一个状态的转移关系,其实感觉这个才是正统的关系细细品味,感觉就是从答案视角;从输入的视角也可以解决,但是也会麻烦一点
    • 对于处理组合数当中的顺序无关所带来的重复性的问题,我们只需在选择元素的时候,规定后面的选择的下标只能大于当前的下标,那么就可以避免这个重复性的问题

题目

递归实现组合型枚举

在这里插入图片描述

  • 组合方案的模版题目

从答案视角进行枚举递归

  • 定义dfs(i)为从当前元素开始遍历枚举
  • 开始的状态就是 dfs(i)
  • 结束的状态就是len(path)==k,也就是满足这个组合的长度限制
  • 状态的转移从当前的range(i,n+1)中选择一个没有被选过的元素加入path,同时标记这个元素,dfs(j+1),然后恢复现场
import os
import sys
path = []
# 定义几个状态,当前答案的数目
n,m = map(int,input().split())
vis = [False]*(n+1)
# 从答案的视角
def dfs(i):if len(path) == m:print(*path,sep=" ")return # 从答案视角进行枚举for j in range(i,n+1):if not vis[j]:vis[j] = Truepath.append(j)dfs(j+1)# 恢复现场path.pop()vis[j] = False
# 调用
dfs(1)
  • 也可以从输入视角,但是最后得进行调整顺序,因为我们最后得到的是正规答案的倒序的情况,注意这个最后更新答案与最终终止的条件的顺序,应该是先判断path的长度是否是m,再判断接下来是否还需要进行接着遍历
import os
import syspath = []
# 定义几个状态,当前答案的数目
n, m = map(int, input().split())
vis = [False] * (n + 1)# 从输入视角,会发现这个输出的答案是按照字典序倒序输出的
# 所以考虑先将答案存起来,再倒着输出
ans = []
def dfs(i):if len(path) == m:ans.append(path.copy())return# 从输入视角# 不选当前的元素if i == n+1:returndfs(i + 1)if not vis[i]:vis[i] = Truepath.append(i)dfs(i + 1)path.pop()vis[i] = False
# 调用
dfs(1)
for i in range(len(ans)-1, -1, -1):print(*ans[i],sep=" ")
http://www.dtcms.com/wzjs/391901.html

相关文章:

  • 泉州企业建站系统公司网站推广怎么做
  • 网吧网站怎么做google下载官网
  • 网站产品展示怎么做事件营销成功案例
  • 做网站和SSH手机网站模板建站
  • 网站建设的过程西安楼市最新房价
  • 基层政府网站建设常州seo招聘
  • 安阳县疫情最新消息南宁seo外包服务
  • 做鸭子的网站怎样把自己的产品放到网上销售
  • 手机网站建设服务器无锡整站百度快照优化
  • 建设集团网站 技术支持中企动力济南seo外包服务
  • 北京北站如何在百度做推广
  • markdown做网站编辑器百度手机助手苹果版
  • 水利部建设项目水资源论证网站西安互联网推广公司
  • 微网站首选公司seo推广岗位职责
  • 建设银行网上银行网站打不开百度推广费用一年多少钱
  • 做国外商品的网站网站制作详细流程
  • 网站排名优化多少钱智慧软文发稿平台官网
  • 做综合医院网站如何做网络推广人员
  • 网站banner 大小如何创建网站?
  • 黑色网站模板关键词你们都搜什么
  • 怎么做像表白墙的网站营销推广是什么意思
  • 做图片网站 解决版权怎样自己做网站
  • 技术支持 佛山网站建设网络推广的含义
  • 荣耀手机好口碑的关键词优化
  • 用java怎么做游戏下载网站吗沙坪坝区优化关键词软件
  • 多页网站模板图片识别
  • 奶茶网站建设域名收录查询
  • 用照片做模板下载网站好成功的软文营销案例
  • 百度收录不到公司网站广告买卖网
  • 企业网站建设视频营销技巧有哪些