算法练习-demo

1.(经典楼梯算法-递归)台阶总数n个,一次可以登1-m个台阶,m<=n,问多少种走法。

public class Test {
    public static void main(String[] args) {
        System.out.println(stairs(10, 3));
    }

    private static int stairs(int n, int m) {
        int sumStep = 0;
        if (n == 0) {
            return 1;
        }
        if (n >= m) {
            for (int i = 1; i <= m; i++) {
                sumStep += stairs(n - i, m);
            }
        } else {
            sumStep = stairs(n, n);
        }
        return sumStep;
    }
}

2.待续

算法练习-demo

时间: 2024-11-09 09:57:24

算法练习-demo的相关文章

C++回溯算法Demo:以4皇后问题为例

回溯算法实际上是构造一棵推理树,并由树的叶子节点反向输出历史步骤: 其中,树的构建过程较为复杂:一种简化的方法是使用链表连接和构造各个节点的关系: 以4皇后问题为例,采用C++ vector容器--避免使用指针(当然换成了整数来代替指针表达对象的位置),解决了该问题.整体算法思路清晰,便于理解. 见代码:与书中不同,此代码实际输出的是所有4皇后问题的不同走法 //title:4皇后问题的回溯算法求解 //Demo: 1)回溯算法实现4皇后问题:2)难点:树形结构的表达:3)用线性容器表达树形结构

前向算法的数学意义上的实现

首先是前向算法 前向算法demo文件:fwd_demo.m 1 %% 前向算法的demo 2 %% 验证的例子参见<统计学习方法>p177 3 %% 4 5 % (编码:红1,白2) 6 % 初始概率分布 7 pi=[0.2 0.4 0.4] 8 9 % 概率转移矩阵 10 A=[ 0.5 0.2 0.3; 11 0.3 0.5 0.2; 12 0.2 0.3 0.5] 13 14 % 观察矩阵(发射矩阵) 15 B=[ 0.5 0.5; 16 0.4 0.6; 17 0.7 0.3] 18

分治算法

分治算法即将一个问题划分成多个子问题求解,最后的结果就是几个子问题的合集,通常图形类的算法,尤其是2的几次方数组问题可以优先考虑. 汉诺塔和二分搜索都是分治算法的思想,个人觉得最好体现分治算法的demo是棋盘覆盖问题,代码如下: #include <stdio.h> #include <stdlib.h> #define SIZE 4 static int title = 1; //title表示L型骨牌的编号 static int board[SIZE][SIZE]; /** *

卡马克卷轴算法研究

对于J2ME框架下的手机游戏程序的开发,其地图滚动的重绘有多种算法,由于手机性能的限制和开发周期等其他非技术条件,需要根据情况灵活选择所需的技术.但在及其苛刻条件下,如系统CPU资源不足,地图块尺寸较小等,会造成屏幕闪耀,帧数过低等情况,严重影响到游戏体验.在开发中如此类问题无法绕过以及避免(指通过修改策划方案,以及程序使用的技术框架),则需要考虑使用地图缓冲绘制技术,卡马克卷轴就是一种最经典的地图缓冲绘制技术.可有效的改善在地图绘制中的屏幕闪耀,帧数过低等情况. English Abstrac

算法情缘

算法情缘 "程序员与算法,是一个永恒的话题,无论在哪个论坛,只要出现此类主题的帖子,一定会看到两种针锋相对的观点的"激烈碰撞",其实泡过论坛的人都知道,两种观点"激烈辩论"的惨烈程度往往上升到相互问候先人的高度,即使是技术论坛也不例外."比如CSDN推出征文活动,论坛下面的讨论那是相当激烈啊,算法对于程序员来说,相似的情思,一样的共鸣,你懂与不懂,我一直在那里,悠悠的等待,浅浅流露着丝丝的忧愁,却又不失唯美,原来算法也可以这么的美好,诗情画意的场

视频质量诊断----色度异常检测

色度异常检测一般称为偏色检测. 即图像为某一范围颜色值分布过多而导致图像整体偏色的情况. 原理 提取图像的色度分量H 计算色度分量H的直方图 求最方图最大bin占整个直方图的比例,该比例值就为偏色值 结果演示 偏色率:1.0 0 0.21 0.43 1.0 偏色率: 1.0 0.71 0.77 1.0 偏色率: 0.23 0.17 0.0 0.0 备注:以上图像来自另一位博主的偏色检测文章http://www.cnblogs.com/Imageshop/p/3191853.html 本算法缺点对

View Frustum Culling

作者:i_dovelemon 来源:CSDN 日期:2014 / 10 / 28 主题:View Frustum, Culling 引言 在前面的一篇文章获取View Frustum的6个面中讲述了如何根据View-Proj矩阵来获取View Frustum在世界坐标系中的6个平面.研究过场景管理的同学就会知道,在将图元数据传入到流水线之前,我们需要对数据进行组织.而场景管理通常就是进行这样的工作,通过场景管理,我们剔除(Culling)那些不在View Frustum中的物体,也就是在显示器中

谈asch系统的共识机制与容错性

本文章出自:http://blog.asch.so/,转载请注明出处. 0 前言 我曾分析了DPOS算法的漏洞并且模拟了一个简单的攻击的方法,然后实现了一个简化的PBFT算法模型试图去修复该漏洞,并且对比了效果. 随后在正式的产品中实现了完整版的算法,并且部署了10台机器进行了测试.测试的结果在安全性方面完全符合预期,即经过频繁的重启.不按常规的广播区块.少数受托人联合作弊的情况下,整个系统依然不会分叉:但是在性能方面,不太理想,在没有任何交易的情况下,网路流量的峰值(广播区块的瞬间)达到了1.

Android加密算法

基本需求及概念 随着Internet网的广泛应用,信息安全问题日益突出,以数据加密技术为核心的信息安全技术也得到了极大的发展.目前的数据加密技术根据加密密钥类型可分私钥加密(对称加密)系统和公钥加密(非对称加密)系统. 对称加密算法是较传统的加密体制,通信双方在加/解密过程中使用他们共享的单一密钥,鉴于其算法简单和加密速度快的优点,目前仍然是主流的密码体制之一.最常用的对称密码算法是数据加密标准(DES)算法,但是由于DES密钥长度较短,已经不适合当今分布式开放网络对数据加密安全性的要求.最后,