汉罗塔编程_c语言斐波那契数列递归算法

汉罗塔编程_c语言斐波那契数列递归算法汉罗塔C语言算法新手入门(3分钟学会)前言我相信大家在刚接触C语言时对汉罗塔递归算法有些头痛,现在依旧头痛的小朋友不要担心,你只要学完这篇文章,我相信你对汉罗塔算法十分感兴趣的。一看就会,不信试试?具备知识在看这篇文章之前,首先你得学会C语言函数知识点,仅此而已。1.直接上代码#include<stdio.h>intmain(){voidmove(intn,c…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

汉罗塔C语言算法新手入门(3分钟学会)

前言

我相信大家在刚接触C语言时对汉罗塔递归算法有些头痛,现在依旧头痛的小朋友不要担心,你只要学完这篇文章,我相信你对汉罗塔算法十分感兴趣的。一看就会,不信试试?

具备知识

在看这篇文章之前,首先你得学会C语言函数知识点,仅此而已。

1.直接上代码

#include<stdio.h>
int main()
{
 void move(int n,char a,char b,char c);        //定义汉罗塔函数
 int n;                                        //板的个数
 scanf("%d",&n);
 move(n,'a','b','c');                          //调用函数                      
 return 0;
 
}
void move(int n,char a,char b,char c)
{
 if(n==1)
  printf("%c->%c\n",a,c);                     //当只有一块需移动的板时,则直接从‘a'移动到'b'                 
 else
 {
  move(n-1,a,c,b);                            //n-1个板数从a移动到c,再从c移动到b
  printf("%c->%c\n",a,c);
  move(n-1,b,a,c);                            //n-1个板数从b,借助a,移动到c
 }
}

是不是看懂了呢?我知道就这么简**单,相信你现在一定解决了这道题目.

2.分析

从上面代码我们可以看出,我们在自定义函数内调用了自身,这就是递归函数的本质,当你学会了递归函数的用法,你会发现,你写循环函数的次数会变少了,直接调用自身,显得代码整洁,易懂。或者,你是一名刚刚学C语言的朋友,为什么在定义函数时用 void不用int呢?这个呢,你不必太纠结,花个30秒去查看一下其它的博客,大致就会了解了.

3.小编恳求

这是我的第一篇博客,希望大家多多支持,不懂的可以评论区发言,还有,我写的不好的地方希望大家指正,在此,表达感谢,感谢大家看这篇博客。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/182754.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 前端开发博客_程序员的个人博客

    前端开发博客_程序员的个人博客国内技术团队博客,大多集中在前端,下面是这些前端技术团队的博客。还有少量非前端(或者不只是前端)的技术博客,单独整理到另一个列表中去了(点击前往)【腾讯】腾讯前端Web团队IMWEBhttp://imweb.ioIMWEB团队创立之初是负责腾讯最核心的基础业务:QQ注册、QQ登录(ptlogin)、QQ资料和关系链拓展等基础服务。后转型进行应用开发,分别投入Q+、QQ圈

    2022年8月13日
    1
  • LeetCode算法题-Lowest Common Ancestor of a Binary Search Tree

    LeetCode算法题-Lowest Common Ancestor of a Binary Search Tree

    2021年6月17日
    94
  • Asterisk 操作mysql数据库的应用

    Asterisk 操作mysql数据库的应用

    2021年5月7日
    108
  • java 键盘输入多种方法

    java 键盘输入多种方法一、java不像C中拥有scanf这样功能强大的函数,大多是通过定义输入输出流对象。常用的类有BufferedReader,Scanner。实例程序:1、利用Scanner实现从键盘读入integer或float型数据//importjava.io.*;importjava.util.*;publicclassInputTest{publicstaticv

    2022年7月8日
    18
  • Facebook时序预测工具Prophet实战分析

    Facebook时序预测工具Prophet实战分析引言去年Facebook开源了一套时序预测工具叫做Prophet。Prophet是一个预测时间序列数据的模型。它基于一个自加性模型,用来拟合年、周、季节以及假期等非线性趋势。它在至少有一年历史数据的日常周期性数据,效果最好。Prophet对缺失值,趋势的转变和大量的异常值是有极强的鲁棒性。Prophet中文翻译是:“先知”。名字还是挺贴切的。在看完本篇文章后,你将会知道:

    2022年6月29日
    29
  • 向量函数的内积_向量的内积运算

    向量函数的内积_向量的内积运算这是我的第一篇博客,谈谈自己在读研中的一些小思考,希望能给大家的学习带来一点启发。对于函数内积,我想很多理工科的都理解,最常用的就是傅里叶变换,一个信号与很多个频率的基函数相乘,也就是信号与每个基函数做内积,求得在每个基函数上的占比,或者说是在该基函数上的投影大小,遍历全部基函数,就求得在全部基函数的占比。![在这里插入图片描述](https://img-blog.csdnimg.cn/202…

    2022年9月1日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号