阅读 344

java常见递归练习题(java递归算法经典实例)

说到递归想必大家还是比较熟悉的,简单来说就是把问题细化,同时重复某一项的循环操作。这里还是要跟循环有一个区分,像我们之前学习的斐波那契数列、插入排序都用到了递归的思想。不论是学习的重点,还是面试的时候,都会对这方面有所涉及。下面就一些java递归练习题分享给大家。

1.多分支递归,斐波那契数列

用代码求某一项斐波那契数列的值

斐波那契数列:这一项的值等于前两项的和

: 1,1,2,3,5,8,13…

分解成两个子问题,f5(n-1)和f5(n-2)
static int f5(int n){
        if (n == 1 || n == 2){
            return 1;
        }
        return f5(n - 1) + f5(n - 2);
}

效果图:

2.插入排序

static void f7(int[] array,int k){
        if (k == 0){
            return;
        }
        int x = array[k];
        int index = k - 1;
        f7(array,k-1);
        while (x < array[index] && index > -1){
            array[index + 1] = array[index];
            index--;
        }
        array[index + 1] = x;
    }

以上就是java常见递归练习题的介绍,细心的人会发现,递归跟数组的使用结合比较密切,大家在学习递归的同时,也顺便复习了一下数组的知识点。更多Java学习指路:java数组


文章分类
代码人生
文章标签
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐