美文网首页程序员
Feynman Technique 费曼技巧

Feynman Technique 费曼技巧

作者: eb116c5392b0 | 来源:发表于2016-04-03 16:20 被阅读414次

    什么是费曼技巧

    费曼技巧是一种以教促学的学习方法。

    适用的学习内容

    适用于概念和概念应用的学习
    例如XXX是什么,怎么使用XXX。

    应用场景

    1. 学习一个新的或者是你不是很明白的想法或概念,
    2. 记住一个你已经明白的想法或者概念。
    3. 用于考试学习,快速深入理解一个想法或者概念,并转化成长期记忆。

    步骤

    1. 选择一个新概念

    2. 假装你在教授这个概念给学生。

    3. 无论什么时候卡壳,立刻查资料,直达通顺。

    4. 最后简化表达,适当使用类比。

    实例

    1.理解扭矩

    扭矩是一种转动的力

    想象一个扳手,正在转动一个螺帽 ,左转松,右转紧 。

    2. 理解递归

    这里学习资料,来自维基百科:递归

    在方法中使用方法本身,同时不断缩小问题规模,直至小到我们知道怎么解决。

    比如吃苹果

    吃苹果的方法: 拿一个苹果削皮切块用牙签吃。

    吃苹果的方法已经知道,用递归吃100个苹果的方法是什么?

    先从100个苹果拿1个苹果放一边,想剩下99个怎么吃?然后再把1个苹果放一边,想剩下98个怎么吃?最终问题将变成1个苹果怎么吃?而你吃1个苹果的方法已经知道了!

    问题已经从吃100个苹果的问题,变成吃99个苹果的问题,最后变成吃1个苹果的问题。

    下面用代码表示递归吃苹果。

    function eatApples($n)
    {
        echo "I am goint to eat $n apples\n";
    
        //n>1个苹果的吃法不知道,缩小问题规模,直到变成n=1个苹果的问题
        if ($n > 1) {
    
            eatApples($n - 1);
    
            // n-1个苹果的方法
            echo "I have eaten $n apples so far\n";
    
        //n=1个苹果的吃法已经知道
        } else {
    
            echo "I have eaten  1 apple so far\n";
        }
    
    }
    

    如果不理解,可以在看看下面示例。

    经典递归示例 - 阶乘

    n = 0, fact(n) =1

    n > 0, n *fact(n-1)

    function f($n)
    {
        if($n == 0)
        {
            return 1;
        } else
        {
            return $n * f($n-1);
        }
    
    }
    

    相关文章

      网友评论

        本文标题:Feynman Technique 费曼技巧

        本文链接:https://www.haomeiwen.com/subject/sejulttx.html