社区
Java SE
帖子详情
这个递归程序的执行顺序是怎样的?
sinat_35036964
2017-12-23 07:01:35
book[i]=0;第一次打印出来后,下面的执行步骤是怎样的呢?
希望大家帮帮看看
...全文
501
6
打赏
收藏
这个递归程序的执行顺序是怎样的?
book[i]=0;第一次打印出来后,下面的执行步骤是怎样的呢? 希望大家帮帮看看
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
踏实,简单
2018-01-02
打赏
举报
回复
你用递归写一个输出1-100的数就懂了
我自横刀香甜笑
2017-12-25
打赏
举报
回复
public static void dfs(int step){ if(step == n + 1){ for (int i = 1 ; i <= n; i++){ System.out.println("a[" +i + "]=" +a[i]); } System.out.println(); return; } System.out.println("Step : " + step); for (int i = 1 ; i <= n; i++){ if(book[i] == 0){ a[step] = i; book[i] = 1; dfs(step + 1); book[i] = 0; } } return; } 这样看看执行顺序吧。。。 另:结构体里的数组你也可以定义为数组,或者定位为ArrayList,vector之类的。。。。
ooo-ooo
2017-12-25
打赏
举报
回复
你把初始的数据放到方法里面,然后拿笔和纸写一下每个循环的结果就知道怎么回事了
sinat_35036964
2017-12-23
打赏
举报
回复
不是,我不是想问动态规划的状态转移方程,我只想知道dfs方法递归的执行过程,我发一张运行结果的图
第一次打印出123后return,然后book[i]=0那里是怎样执行的?,以及后续的全排序是怎么打印出来的
oyljerry
2017-12-23
打赏
举报
回复
主要是先写出动态规划的转移方程。递归只是提现这个逻辑规则
sinat_35036964
2017-12-23
打赏
举报
回复
还有一个问题 这段C代码怎么改成Java代码,结构体中的数组在类中怎么实现呢? #include <stdio.h> struct queue { int data[100];//队列的主体,用来存储内容 int head;//队首 int tail;//队尾 }; int main() { struct queue q; int i; //初始化队列 q.head=1; q.tail=1; for(i=1;i<=9;i++) { //依次向队列插入9个数 scanf("%d",&q.data[q.tail]); q.tail++; } while(q.head<q.tail) //当队列不为空的时候执行循环 { //打印队首并将队首出队 printf("%d ",q.data[q.head]); q.head++; //先将新队首的数添加到队尾 q.data[q.tail]=q.data[q.head]; q.tail++; //再将队首出队 q.head++; } getchar();getchar(); return 0; }
循环和
递归
在算法中的应用
顺序执行、循环和跳转是冯·诺依曼计算机体系中
程序
设计语言的三大基本控制结构,这三种控制结构构成了千姿百态的算法,
程序
,乃至整个软件世界。
递归
也算是一种
程序
控制结构,但是普遍被认为不是基本控制结构,因为...
1391020381#Web-Foundation#17-
递归
1
递归
程序
调用自身的编程技巧称为
递归
阶乘
执行顺序
从下往上尾调用// 尾调用// 非尾调用* 尾调用函数执行时,虽让也调用了一个函数,但是因为原来的函数执行完毕,执
c语言超级经典400题
1、C语言
程序
的基本单位是____ A)
程序
行 B) 语句 C) 函数 D) 字符、C... 5、C语言可执行
程序
的开始执行点是( ) A)
程序
中第一条可执行语句 B)
程序
中第一个函数 C)
程序
中的main函数 D) 包含文件中的第一个函数、C、1
数据结构课程设计数据结构课程设计
1.实现有序顺序表、有序单链表的插入、删除、有序合并操作 2.栈与队列的实现,
递归
程序
实现,理解
递归
程序
的执行过程 3.二叉树、树、森林的表示及操作 4.图的邻接表、邻接矩阵表示及操作 ......
编程机器人Light-Bot-2.0(附存档编辑器)
锻炼编程思维的小游戏,融入了编程的基本概念(如
程序
的顺序执行、循环、条件,函数,
递归
)
Java SE
62,614
社区成员
307,326
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章