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

合肥哪个公司做网站好沈阳制作网站的公司有哪些

合肥哪个公司做网站好,沈阳制作网站的公司有哪些,国外的自建网站怎么做,个人简介干净短句题目分析: 给一个数组,列出它的全排列 算法原理分析: 这里就是一个穷举/枚举的原理,就是罗列所有的可能情况 第一步:画决策树(越详细越好) 就是你如何暴力穷举每一种情况,把你的…

题目分析:

给一个数组,列出它的全排列

算法原理分析:

这里就是一个穷举/枚举的原理,就是罗列所有的可能情况

第一步:画决策树(越详细越好)

就是你如何暴力穷举每一种情况,把你的思考过程详细的画下来

注意:决策树可能不一样,但如果决策树能写出代码,你的决策树就是对的,一道题可能有多种决策树

 

假设我们有三个数,我们开始画决策树,看图,在最左边的时候,我们第一个已经选1了,下一个位置依旧可以选1/2/3,但是题目有说不重复的树,这就利用到我们以前学的剪枝操作,把1的位置剪掉即可(当这个情况不符合要求的时候,剪掉,也就是这个1后面的分支我就不在考虑了

 

可以自己尝试画一下决策树,看一下是否和上图一样 

可以发现我们每一个结点都是重复填1/2/3,无非就是有些要剪枝

每一个结点都在重复一件事,此时你是否想到递归,这样你的决策树就可以写成递归代码

第二步:设计代码

 考虑三点:1.全局变量

                   2.dfs函数

                   3.细节

1.全局变量,你每一步需要用什么以及需要返回什么(注意,如果能设计成全局变量最好设计成全局变量,如果设成全局变量操作起来比较麻烦,在想方法设成函数参数,因为有些题可能需要3/4个全局变量,你全部塞到函数参数中,会很头疼,思路不清晰)

这里我们发现:返回一个二维数组,所以我们可以设一个二维数组的全局变量ret去保存结果,最后返回即可

然后我们发现每次回溯->恢复现场也要一个全局变量,我们设一个path,path的作用:当你回溯的时候要恢复现场,也就是pop掉path的最后一个元素即可,然后在进入另一条路径

现在我们有了path,可以自己模拟一下怎么走的,但发现剪枝问题如何解决呢???

此时可以在设一个全局变量,也就是bool check[],这里面存储每个元素是否已经被使用了

也就是你此时处于某个结点,你枚举是不是来一个for循环,从1枚举到3,如果判断1在check中已经使用了,那就不会在进入(完成剪枝操作)然后枚举2,check中是false,那就进入dfs

2.dfs函数:仅需关心每一个结点所做的事情

dfs:枚举数字

3.细节问题 

关心三点:1.回溯:干掉path最后一个元素,还要把check中对应位置改为true;

                  2.剪枝:通过check来完成剪枝

                  3.递归出口:遇到叶子结点,把path添加到ret即可 

代码编写: 

递归什么时候结束???

看第一个for循环

也就是你第一个位置填1,进去枚举所有以1开头的所有情况

下一次循环2,第一个位置填2,进去枚举所有以2开头的所有情况

下一次循环3,第一个位置填3,进行枚举所有以3开头的情况

第一个枚举完1/2/3后循环结束,dfs函数调用结束 


文章转载自:

http://ab5zVP1w.wtnyg.cn
http://DDjYMo9K.wtnyg.cn
http://RL0JArxQ.wtnyg.cn
http://icQaPf8v.wtnyg.cn
http://YLGKwpUV.wtnyg.cn
http://fr2GNKf3.wtnyg.cn
http://AJuy1v5q.wtnyg.cn
http://6l567c0G.wtnyg.cn
http://vsc8WugV.wtnyg.cn
http://JfQt19UH.wtnyg.cn
http://qYdFvtzv.wtnyg.cn
http://QrcytZdZ.wtnyg.cn
http://bzoSy9Jo.wtnyg.cn
http://TOzXP3JR.wtnyg.cn
http://0vErrLOQ.wtnyg.cn
http://sd2E1p1U.wtnyg.cn
http://cC2jDQUL.wtnyg.cn
http://2AespphM.wtnyg.cn
http://zDIawwQq.wtnyg.cn
http://XLcmmQ6N.wtnyg.cn
http://r3P2mHtZ.wtnyg.cn
http://2cB48G3Q.wtnyg.cn
http://TTxlg7NU.wtnyg.cn
http://BctMciGt.wtnyg.cn
http://MXhhqej1.wtnyg.cn
http://0ETP1Mag.wtnyg.cn
http://y8BPfxRN.wtnyg.cn
http://KX5miVCT.wtnyg.cn
http://chkpjcKT.wtnyg.cn
http://13DvkzPU.wtnyg.cn
http://www.dtcms.com/wzjs/675606.html

相关文章:

  • 做网站公众号要多少钱Wordpress前端用户头像
  • 1m宽带做网站公司网站一般是怎么做
  • 网站怎样做支付接口建设电子商务网站总结
  • 网站建设规划ppt收录好的网站
  • 重庆宣传网站怎么做建设银行临夏分行网站
  • 东莞模板建站哪家好关于政务网站建设的调查问卷
  • 网站建设大忌wordpress只能写博客吗
  • 中国都有哪些网站遂溪网站开发公司
  • 网站编排ui设计培训学校哪里好
  • 什么网站可以申请做汉语老师安康网站建设小程序
  • 网站基础模块建设wordpress 上传字体
  • 推广的网站需要备案吗中国企业库
  • 电商网站 建设价格商城网站建设清单
  • 怎样制作网站?wordpress 修改 点击量
  • 云南企业网站wordpress免费自适应主题
  • 遵义做网站制作化妆品网站
  • 花钱制作网站有什么好处网站营销推广策划方案
  • wordpress英文仿站ppt模板下载的网站
  • 网站页头是什么电子商城网站设计论文
  • 外贸网站怎么做优化深圳松岗最新消息今天
  • 学校网站管理系统免费版国内阿里巴巴网站怎么做
  • 网站建设销售问你告诉我怎么制作惠州做棋牌网站建设
  • 百度提交网站地图绿色大气网站
  • 网站建设要会英语吗百度统计网站概况
  • 网站打开空白页面不同程序建的网站风格
  • 建设网站最好的如何自己创办一个网站
  • 免费创建网站教程wordpress 科技主题
  • 专做国外旅游的网站wordpress 主题logo
  • 企业网站建设知名长沙公司网站高端网站建设
  • 网站开发确认书网络外贸平台有哪些