什么是费曼技巧
费曼技巧是一种以教促学的学习方法。
适用的学习内容
适用于概念和概念应用的学习
例如XXX是什么,怎么使用XXX。
应用场景
- 学习一个新的或者是你不是很明白的想法或概念,
- 记住一个你已经明白的想法或者概念。
- 用于考试学习,快速深入理解一个想法或者概念,并转化成长期记忆。
步骤
选择一个新概念
假装你在教授这个概念给学生。
无论什么时候卡壳,立刻查资料,直达通顺。
最后简化表达,适当使用类比。
实例
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);
}
}