19 解决问题的策略

众所周知,每个学期都会有一个单元“解决问题的策略”。而在此文章,我们会把小学阶段所有策略都进行一一讲解。

每个年级的两个学期中的策略,其实有异曲同工之处。

  • 三年级:从条件和问题出发解决问题
  • 四年级:用图表整理信息
  • 五年级:通过转化筛选来优化枚举
  • 六年级:通过假设筛选来优化枚举

从不同角度解决问题【三年级】

三年级上册的思考方式是“从条件出发解决问题”,而三年级下册的思考方式是“从问题出发解决问题”,同时也贯穿了四年级上册的“多种方式解决问题”。

小猴帮妈妈摘桃,第一天摘了30个,以后每天都比前一天多摘五个。小猴第三天摘了几个?第五天呢?

为了与将两种极度相似的思考方式区分开,我画了两个图。


这是从条件出发所画出的逻辑图。以“第一天摘的桃子数量”作为整个问题的出发点。


这是从问题出发所画出的逻辑图。以“第五天摘的桃子数量”作为整个问题的出发点。

在这两种出发点中,思路或许有一些不同,但最后的算式基本是相同的。不同的人,思维方式或许有些不同,就像我喜欢从问题出发解决问题,但是还可能有人喜欢从条件出发解决问题。只要适合自己,那么这个思考方式就是好的。由于这个思路是所有应用题的基础,这一部分的理解深度决定高年级能不能学好。这就是四年级上册的关键。(由于这部分太基础了,甚至都不知道该说什么)

从条件出发思考问题要点:

要弄清题中每个条件的含义,看清楚要求的问题。
可以从条件想起,确定先算什么,再算什么。
可以列式计算,也可以列表找出答案。

从问题出发思考问题要点:

可以从问题开始想,根据问题分析数量关系,确定先算什么。
要根据题目中的条件和问题,选择分析问题的思路。

从多种角度出发思考问题要点:
先要弄清题意,明确已知条件和所求问题。
再分析数量关系,确定先算什么,后算什么。
算出答案,还要进行检验和反思。
可以从条件想起,也可以从问题想起。
可以通过列表、画线段图等方式进行分析。
可以利用数量之间的关系,用多种方法解题。

整理信息【四上】

在前面我讲过四年级上的思维方式是“多种角度解决问题”,但在我的印象中,还有一个非常费笔的事情:“整理信息”。
虽然它在课本中并没有提到很多,但是它在考试中的出现率非常高。要说窍门,也没什么窍门。整理信息有三步:

第一步、认真审题。

这一步审题可不只是简单的看一眼题,而是要清楚题目中的数量关系,每个数据对应的量分清楚。

第二步、看表

这一步的表也可能只是某种格式。如果需要文字描述,那么就要根据题目给出的例句来进行填写。而填表则需要看清楚表头,第一排,第一列,清楚每个数据应该填在哪里。

第三部、填写

这一步是在前两步的基础之上进行的,也是最终结果。

画图解决问题【四下】

画图的主要用途是整理信息与分析关系,让条件更直观。在普通的数量关系问题中,可以画线段图。
线段图的标注说明如下:

  1. 虚线分割+实线=多多少
  2. 虚线分割+虚线=少多少
  3. 右边直且向左括号=括号内数量之和

而在与图形有关的题目时,可以画示意图,把题目中的信息都标注出来,更容易思考。画图是一种最基本的能力,在小学阶段的应用范围非常多。我在遇到不懂的题目时,就会选择画图的策略。
画线段图的主要优点:
画线段图能使数量关系更直观、更清楚。
看线段图分析数量关系,容易找到解题方法。
把得数带入原题检验,要符合所有已知条件。
画示意图的体会:
要根据题目条件和信息逐步画出示意图。
要把题目的条件和问题都在示意图中标注清楚。
观察示意图可以清楚地看出数量之间的关系。

有序枚举【五上】

枚举是一个简单粗暴的策略。
其实大部分题目其实可以不用枚举法,用更高层次的方法可以解决。例如汽车发车问题,是公因数与公倍数的变体。

但是偏偏就有一些叼毛题目,只有枚举才可以解决。这里暂且不说需要把每种情况都要列举出来的题目。这里我以编程的角度说,一般的枚举题目,只需要双重循环,甚至时间复杂度可以降到O(n)甚至O(logn)的,就是简单枚举。但是有些题目,像深度优先搜索,广度优先搜索,它就有了一个更高级的名字:回溯算法。

简单枚举

在小学阶段,基本都是两个基数的枚举。我在02 排列与组合这篇文章中写到过,多个量的关系,“任选其一”或“并列”关系,用加法原理。“缺一不可”或“因果”关系,用乘法原理。固定一个基数,将另一个基数枚举,就得到了固定的这个基数的所有情况,以此类推。
列举时,可以列表,也可以画图。
可以根据问题的特点,选择合适的列举方法。
列举出全部结果后,要进行检查。

回溯算法

以深度优先搜索为例。深度优先搜索简称为dfs。无论是深度优先搜索,还是广度优先搜索,他们都需要“递归”这个中心思想。回溯就是递归,只要有递归就会有回溯。深度优先搜索可能会用于二叉树的搜索,在这个过程中,循环层数非常多,它已经脱离了简单枚举。

对于不会编程(例如我的同学),我可以用简单的语言描述。回溯算法只是暴力搜索,并不是什么高明的方法。
回溯算法能解决如下问题:

组合问题:N个数里面按一定规则找出k个数的集合
排列问题:N个数按一定规则全排列,有几种排列方式
切割问题:一个字符串按一定规则有几种切割方式
子集问题:一个N个数的集合里有多少符合条件的子集
棋盘问题:N皇后,解数独等等

这是回溯算法的伪代码。

//一定要分成横纵两个方面思考回溯
void backtracking(参数) {if (终止条件) {存放结果;return;}for (选择:本层集合中元素(树中节点孩子的数量就是集合的大小)) {//注意i=0,i=start的区别处理节点;backtracking(路径,选择列表); // 递归  注意(i)和(i++)的区别  后面会懂回溯,撤销处理结果}
}

想要优化回溯算法只有剪枝一个方法。但是这篇文章并不想往下继续讲,因此回溯算法的介绍到此完成,知道就行了。

转化思维【五下】

转化思维是一个很辽阔的话题,但是在此对五年级下册所针对的两个主要转化题型作分解。

图形转化

对于有弧线的图形,往往需要转化。转化思维并不难,但是由于在它前一个单元学了“圆”,导致出现了曲线图形,也就需要转化。曲线图形转化的难度自然比非曲线图形要难得多。在转化的时候,有一个重点:弧线相同则可以拼接。只要能够证明这两弧线相同,就可以连到一起。
有些不规则的复杂图形可以转化成学过的熟悉图形。
图形转化时可以利用平移、旋转等方法。
转化后的图形和转化前的图形相比,形状变了,大小没有变。

特殊分式转化

这类的分式必须非常巧。一定要是分母相同,分子的比例为1:2的,才可以。


让我们再借用一下课本中的图片。将大正方形设为单位1,每个图形的面积都在逐步除以2。这是因为他们之间的比例是1:2的缘故。而最后缺失的面积,就是最小图形的面积。但对于其他比例是否也会有同样的结果,我还有待探究。
有些复杂的算式可以转化成简单的算式。
有时画图可以帮助我们找到转化的方法。

有序假设【六上】

在假设法这一单元,我们直接用课本上一些具有代表性的题目来讲解。比如说六上课本第七十一页 练一练第一题,我们可以从问题和条件两个角度出发思考问题。

从问题出发思考问题

原问题:
上衣多少钱?
转化为:
假设买的全部都是裤子,需要多少钱?
裤子是多少钱?
假设的情况,与原情况相比有什么变化?
假设此情况之后问题变方便了吗?

从条件出发思考问题

上衣与裤子有什么关系?
如果全部买裤子,会发生什么变化?
如果这么买,会和原问题有什么出入?
假设后会变方便吗?

假设思维总结

我们可以发现,从条件和从问题出发都差不多,不过是顺序发生了一点变化。
这样子思考,我们就可以得出转化前与转化后的优劣以及钱数。
【重点】:假设多与转化思维共同出现,要仔细思考情况发生的变化。
之所以需要假设与转换,就是因为原情况过于复杂。当然,直接算出上衣的钱再相加也是可行的。
【重点】:参与多个量的假设往往有多种假设方法。

之前我们使用过的假设

  1. 在简便计算99×28时,凑整转换为(100-1)×28
  2. 已知两个数的和与差,假设这两数相等,分别求出两个数。
  3. 假定未知数为x,列方程计算
    由此可见,假设法的用处很多。
    通过假设可以转化问题,使数量关系关系变得简单。
    假设时要搞清楚数量之间的关系。
    假设时也可以用字母表示未知量,用方程解答。
    弄清假设前后的数量关系,注意总量是否有变化。
    要在不同的假设方法中选择较简单的。

更清晰地理解题目【六下】

这单元的主要考点是倍比法。对于这一单元,与【五下】的转化思维有相似之处。严格来说,倍比法就是通过转化思维来实现的。这是例一的考点。
但是例二的考点似乎就是【五上】的枚举法了。但这两个例子有异曲同工之处:用了画图的策略。这也和我三年级时分析的一样:六下注重于画图,并且更清晰地理解问题。
“把一个问题清楚地描述出来,这个问题就已经解决了一半。”清晰地理解问题,正是画图法的精髓。因为这点在之前的策略中有讲到过,(参见 画图解决问题【四下】)所以这里就不过多描述了。

文尾

小学的策略正如上文所说,但其实都绕着几个东西转“不同角度解决问题”“转化法”“画图解决问题”。这些在奥数中,必然是非常重要的思想。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/38313.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

X射线底片焊缝缺陷检测

实现四种焊缝缺陷的检测和分割处理。

Python:谈谈常规滤波器(带通、低通、高通、带阻)的用法

一、滤波器的作用 滤波器在信号处理中用于移除或减少信号中的噪声,同时保持信号的某些特性。滤波器通常用于音频、视频和图像处理等领域。滤波器根据其 designed for different purposes and can be divided into several types, such as lowpass filters, highpass…

Pikachu 不安全的文件下载(Unsafe file download)概述 附漏洞利用案例

目录 获取下载链接 修改链接 重新构造链接 拓展 不安全的文件下载概述 文件下载功能在很多web系统上都会出现,一般我们当点击下载链接,便会向后台发送一个下载请求,一般这个请求会包含一个需要下载的文件名称,后台在收到请求…

02.Ambari自定义服务开发-metainfo.xml介绍

文章目录 metainfo.xml 介绍配置说明Hbase metainfo.xml配置说明配置参数详细介绍配置文件样例DORIS metainfo.xml 介绍 ​ 在Ambari自定义开发中,metainfo.xml 配置文件起着至关重要的作用。它用于定义服务的元数据信息,包括服务的版本、组件、执行脚本…

Todesk远程Ubuntu桌面系统100%但是进不去桌面

1、报错情况 如下图所示,用Todesk远程Ubuntu桌面,看到连接100%了,但是进不去桌面 ubuntu系统看起来的话,已经像被远程成功了 我就首先把todesk卸载重新安装了,后面发现还是这样,于是我就找客服去问了&…

Qt之Pdb生成及Dump崩溃文件生成与调试(含注释和源码)

文章目录 一、Pdb生成及Dump文件使用示例图1.Pdb文件生成2.Dump文件调试3.参数不全Pdb生成的Dump文件调试 二、个人理解1.生成Pdb文件的方式2.Dump文件不生产的情况 三、源码Pro文件mian.cppMainWindowUi文件 总结 一、Pdb生成及Dump文件使用示例图 1.Pdb文件生成 下图先通过…

SpringMVC(1)——入门程序+流程分析

MVC都是哪三层?在Spring里面分别对应什么?SpringMVC的架构是什么? 我们使用Spring开发JavaWeb项目,一般都是BS架构,也就是Browser(浏览器)-Server(服务器)架构 这种架构…

基于SpringBoot的超市进销存系统

你好呀,我是计算机学姐码农小野!如果有相关需求,可以私信联系我。 开发语言:Java 数据库:MySQL 技术:SpringBoot框架 工具:MyEclipse、Tomcat 系统展示 首页 首页界面图 个人中心 个人中心…

ESP32实现UDP连接——micropython版本

代码: import network import socket import timedef wifiInit(name, port):ap network.WLAN(network.AP_IF) # 创建一个热点ap.config(essidname, authmodenetwork.AUTH_OPEN) # 无需密码ap.active(True) # 激活热点ip ap.ifconfig()[0] # 获取ip地址print(…

【D3.js in Action 3 精译】1.1.2 D3.js 的适用场景

译注 上一节中我们了解了 D3 诞生的技术背景——为了满足 Web 可访问数据的可视化需求。本节再来看看 D3.js 的适用场景是怎样的、在什么时候会考虑使用 D3.js。 1.1.2 D3.js 的适用场景 数据可视化领域正蓬勃发展,且备受青睐。过去十年间用于生成数据驱动图形的工…

Linux—进程与计划管理

目录 一、程序 二、进程 1、什么是进程 2、进程的特点 3、进程、线程、携程 3.1、进程 3.2、线程 3.3、携程 三、查看进程信息 1、ps -aux 2、ps -elf 3、top ​3.2、输出内容详解 3.2.1、输出第一部分解释 3.2.2、输出第二部分解释 4、pgrep 5、pstree 四、进…

【项目】论坛系统项目自动化测试

论坛系统项目自动化测试 前述一、脑图二、代码编写1.公共类InitAndEnd1.登录页面测试ForumLoginTest正常登录:异常登录: 3.注册页面测试ForumRegisterTest注册成功:注册失败: 4论坛列表页面测试ForumListTest登录状态下&#xff1…

1.spring入门案例

Spring 介绍 Spring是轻量级的开源的JavaEE框架。 Spring有两个核心部分:IOC和AOP IOC 控制反转,把创建对象过程交给Spring进行管理。 AOP 面向切面,不修改源代码进行功能增强。 Spring特点 1.方便解耦,简化开发。 2.AOP编…

算法体系-25 第二十五节:窗口内最大值或最小值的更新结构

一 滑动窗口设计知识点 滑动窗口是什么? 滑动窗口是一种想象出来的数据结构: 滑动窗口有左边界L和有边界R 在数组或者字符串或者一个序列上,记为S,窗口就是S[L..R]这一部分 L往右滑意味着一个样本出了窗口,R往右滑意味…

【MySQL】库的操作【创建和操纵】

文章目录 1.创建数据库1.1字符集和校验规则1.查看系统默认字符集以及校验规则2.查看数据库支持的字符集以及校验规则 1.2校验规则对数据库的影响1.创建一个数据库,校验规则使用utf8_ general_ ci[不区分大小写]2.创建一个数据库,校验规则使用utf8_ bin[区…

flask的基本使用2

上一篇我们介绍了基本使用方法 flask使用 【 1 】基本使用 from flask import Flask# 1 实例化得到对象 app Flask(__name__)# 2 注册路由--》写视图函数 app.route(/) def index():# 3 返回给前端字符串return hello worldif __name__ __main__:# 运行app,默认…

idea的代码提示插件使用记录

安装ai插件卸载之后,偶尔还是idea一直占用100%,将idea缓存全清理了,重新生成之后就正常了 idea官方插件 下面几个感觉…基本没有感觉 按行提示的偶尔有提示,(cpu占用不小,提示不强) 缺点&am…

Sentinel解决雪崩问题

我们或多或少都对雪崩问题有点了解,在微服务系统中,各个微服务互相调用,关系错综复杂,如果其中一个微服务挂了或者处理消息的速度大幅下降,需要被处理的消息越积越多,那么影响的不仅仅是本微服务的功能&…

C++ | Leetcode C++题解之第199题二叉树的右视图

题目&#xff1a; 题解&#xff1a; class Solution { public:vector<int> rightSideView(TreeNode* root) {unordered_map<int, int> rightmostValueAtDepth;int max_depth -1;stack<TreeNode*> nodeStack;stack<int> depthStack;nodeStack.push(ro…

SCI二区|北极海鹦优化算法(APO)原理及实现【免费获取Matlab代码】

目录 1.背景2.算法原理2.1算法思想2.2算法过程 3.结果展示4.参考文献5.代码获取 1.背景 2024年&#xff0c;W Wang受到北极海鹦的生存和捕食行为启发&#xff0c;提出了北极海鹦优化算法&#xff08;Arctic Puffin Optimization, APO&#xff09;。 2.算法原理 2.1算法思想 …