解决问题的策略----经典难题
来源:本站原创
发布人:严春霞 
发布时间:2020-06-22 
浏览次数:
经典的难题
狐狸、鹅、玉米
关键:陈述所有情况。
解决问题的一个重要原则:如果没有意识到所有看可能的动作,很可能无法解决问题。我们可以把这些动作称为操作。通过列举所有可能的操作,可以解决许多问题。我们只要测试这些操作的每种组合,知道发现可行方案。概括的说,用更形式化的术语重新陈述一个问题,常常可以发现此前被我们忽略的解决方案。
用更形式化的方式重新陈述问题是一种非常出色的技巧,可以让我们拥有对问题更好的洞察力。许多程序员设法与其他程序员一起讨论问题,并不仅仅因为对方已经有了答案,而是因为更清晰的陈述问题常常会激发有用的新思路。重新陈述问题就相当于与其他程序员讨论问题。
更深远的意义在于,认识到思考问题很可能与思考解决方案具有相同的工作小路,甚至更胜一筹。很多时候,通往解决方案的正确道路本事就是解决方案。
瓷砖滑块问题
关键: 操作环节漫长
我们无法开始就规划一个完整性的解决方案时。不意味着无法采取策略和技巧。编程中无法看到通向解决方案的清晰道路时,更好的办法是采用一种策略,而不是通过简单的反复尝试和失败解决问题。
在面临一个复杂的问题时,可以对这个问题的削减版进行实验。
问题的细分通常并不是明显的解决之道,花时间研究怎样对问题进细分通常是非常合算的,解决问题时,头脑已经拥有一个特定的目标总比随机尝试要好的多,无论这个目标能否实现。
数独
关键:关键找到突破点,从约束条件最多的下手。
寻找问题约束性最强的部分,它可以简化思路消除很多选择。选最不好完成的下手。
应从最显而易见的那部分任务开始着手。如果可以解决这部分问题,就可以在此基础上继续执行其他可以完成的任务。通过审视自己的代码,很可能会激发自己的想象力,从而解决剩下的问题。
————————————————
版权声明:本文为CSDN博主「1Oin0」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn***/IO1n0/java/article/details/102556325
苏公网安备32041202001011