【手把手带你刷好题】—— 61.按顺序打印i~j(递归)

举报
安然无虞 发表于 2022/05/27 01:03:58 2022/05/27
【摘要】 【前言】 今天是刷题打卡第61天! 加油干叭铁汁们。   原题:按顺序打印i~j(递归)  思路: 找重复:(i + 1)是原问题的重复,规模更小,是其子问题 找变化:i 和 j,i在变化不难看出,但为什么要加上j呢,j虽然没有变化,但是i~j这个整体在变,‘i’ 到'j' 的距离不断缩小,...

【前言】

今天是刷题打卡第61天!

加油干叭铁汁们。

 

原题:按顺序打印i~j(递归) 

思路:

找重复:(i + 1)是原问题的重复,规模更小,是其子问题

找变化:i 和 j,i在变化不难看出,但为什么要加上j呢,j虽然没有变化,但是i~j这个整体在变,‘i’ 到'j' 的距离不断缩小,所以要加上j来衡量它们二者之间的变化

找边界:当 i > j 时结束

代码执行:


  
  1. //打印i~j
  2. #include<stdio.h>
  3. void print(int i, int j)
  4. {
  5. //找重复:print(i+1,j)是原问题的子问题
  6. //找边界
  7. if (i > j)
  8. return;
  9. printf("%d ", i);
  10. print(i + 1, j);
  11. }
  12. int main()
  13. {
  14. int i = 0;
  15. int j = 0;
  16. scanf("%d %d", &i, &j);
  17. print(i, j);
  18. return 0;
  19. }

结语

今天是刷题打卡第61天!

加油吧少年。

 

文章来源: bit-runout.blog.csdn.net,作者:安然无虞,版权归原作者所有,如需转载,请联系作者。

原文链接:bit-runout.blog.csdn.net/article/details/121985353

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。