本人其实内心很抵触去埋头刷算法题,但是有一些算法在实际业务开发中或者思想上还是值得借鉴的,因此通过这种结合实际场景的小Demo来学习和理解算法也可能是对算法提起兴趣对抗枯燥的一种方法吧。在看《剑指Offer》的时候看到回溯章节时,书中的举一反三提到了回溯算法可以应用到像点菜这样的场景中。例如,当客人走进餐馆准备吃饭时,服务员会为客人提供一个菜单,菜单上有所有菜品的价格。如果每道菜只点一份,那么可人有哪些不同的点菜方法刚好将身上的钱全部用完?如果客人只想点k道菜,那么又有哪些不同的点菜方法可以将身上的钱全部用完?如果一道菜可以点多份呢?结合上面多场景我们可以写一个程序来模拟它,由于现实中不可能所