深入学习《大学计算机》系列之第1章 1.2节——问题描述与抽象

一.欢迎来到我的酒馆

        第1章 1.2节,问题描述与抽象。

目录

    • 一.欢迎来到我的酒馆
    • 二.问题描述、抽象与建模
      • 1.什么是抽象
      • 2.为什么要抽象
      • 3.什么是建模
      • 4.建什么模
    • 三.面向计算机的问题分析
    • 四.总结

二.问题描述、抽象与建模

        什么是抽象?为什么要抽象?什么是建模?建什么模?

1.什么是抽象

        看到上面一大堆问题,如果直接给出定义,很难记住,而且我们也不太愿意去记。我们可以拿生活中的例子来帮助我们理解,例如,早上去买菜,别人问你买了些什么?你会说买了一些蔬菜和水果。可能你买了很多的胡萝卜,白菜,玉米,茄子,还有草莓,西瓜等等。当别人问你买了些什么,你一般不会把你所有的都挨个讲出来,而是简要地回答买了一些蔬菜和水果。从这个例子中,我们关注的是菜篮子里的本质特征,即水果和蔬菜,而忽略了菜篮子里水果和蔬菜的种类、形状等,再比如水果是酸的还是甜的,这些我们都忽略。简单的说,抽象,抽:抽出;象:形象,特征。抽象,把象都抽掉了,剩下的就是质,就是本质性的东西。抽象是抽出事物共同的特征。
在这里插入图片描述

        我们还以刚才的菜为例,如果我们的问题背景是吃什么,我们可以从菜篮子里抽象出水果和蔬菜;如果我们的问题背景是研究版面设计,用形状表达就可以了,蔬菜用矩形,水果用圆形表示;如果我们的问题背景是研究营养搭配,用不同的颜色,蔬菜用紫色,水果用红色表示。从这里我们可以看出,抽象是面向问题的简化描述方法,具体怎么描述,取决于我们研究的问题。
在这里插入图片描述

2.为什么要抽象

        为什么要抽象?不抽象不能解决问题吗?抽象是人们求解问题时的认知过程和思维方法,从个别中把握一般,从现象把握本质。我们以人口普查这个问题为例,对一堆人群做人口普查工作。我们需要对人进行抽象,去掉人的爱好、性格、这个人的声音、这个人长得什么样等特征,而要抽象出:姓名、年龄、性别、地址等这些人共同具有的本质属性来表现不同的人。我们把这些共有的本质属性抽取出来形成一个框架,这个框架既可以适用于北京地区的人口普查,也适用于上海的人口普查,其它边远地区的人口普查也适用。在以人口普查为背景的问题下,我们对人抽象,形成一套适合所有地区人口普查的框架,减少重复工作。
在这里插入图片描述

3.什么是建模

        建模,先来看看书本上是怎么定义建模这个名词的。建模是为了理解事物而对事物做出的一种抽象,是对事物的一种无歧义的书面描述。凡是用模型描述系统的因果关系或相互关系的过程都属于建模。建模是把现实中的系统进行模拟或者抽象,通俗来讲,就是把实际的事物用合适的形象表示出来。理解起来还是有点难,我们可以简单的概括一下,建模是一种过程,它可以将复杂的事物简化为可理解的有限图示。
        从上面的描述中,我们可以提取出两个关键词:模型,建模。模型是指为了一定目的,对事物原型的一种抽象,例如航空3D模型是对现实中飞机的一个抽象表达,再比如城市交通模型是对城市交通系统的一个抽象表达。建模,即建立模型,我们对模型有一个输入,那么会得到一个输出,这样一个过程称为建模,用模型来描述相互关系的过程。例如,我们举一个例子,人口增长预测数学模型,这个模型是用来预测人口增长的,我输入第n年,会得到一个人口的增长数据表,这个过程就是建模。
在这里插入图片描述

4.建什么模

        模型有很多种,不仅仅是我们上面举例的数学模型,建模有很多种:

  • 数学建模。用计算得到的结果来解释实际的问题。
  • 数据建模。是数据特征的抽象,是数据库管理的教学形式框架。
  • UML建模。用于面向对象设计的建模语言规格说明,是表示标准。
  • 可视化建模。用图形化的方式描述所开发系统的过程。
  • 3D建模。通过虚拟三维空间来构建出三位数据的模型。
  • 业务建模。以软件模型方式描述企业管理和业务所涉及的对象和要素、以及它们的属性、行为和彼此关系,业务建模强调以体系的方式。

三.面向计算机的问题分析

        生活中,常常会遇到这样的问题,找不着手机了。这时候,用人的思维去找手机,你肯定会去熟悉的位置找,比如去房间里的书桌上找。你的印象中有一个大致的位置,然后根据这个位置去房间里找。但是,如果让计算机来找手机,情况就不一样了。它会不厌其烦地把整个房间遍历一遍,就是全部扫一遍,那可能会找不着吗?只要手机在房间里,那肯定能找着。
在这里插入图片描述
        可以看到,计算机的思维和人不同。在面向计算机的问题分析时,我们关心的是,人需要怎么做,计算机才能做什么。计算机在解决一些问题的时候,人需要做的是问题描述、抽象、建模,计算机才能做求解结果。我们总结一下,面向计算机的问题求解,人需要首先完成问题描述、抽象、建模,并且做好精确的算法设计、正确的程序编制,计算机才能做好计算。
        面向计算机的问题分析,是人和计算机完成各自的事情。计算机是实现人的思维的,但是因为人和计算机各自的能力与优势不同,使得求解问题的方法有很大的不同。

四.总结

1.问题描述、抽象与建模
   主要内容:
                (1).什么是抽象?抽象是对具体问题的简要表达。
                (2).为什么要抽象?抽象可以把事物的共同特征提取出来,形成一套适合所有实例的框架。
                (3).什么是建模?建模是一种问题求解的过程,用模型来描述相互关系的过程就是建模。
                (4).建什么模?建模有很多种,如数学建模,数据建模,3D建模等。
2.面向计算机的问题分析
   主要内容:
                (1).计算机的思维和人不同。
                (2).面向计算机的问题求解,人需要完成问题描述、抽象、建模,并且做好算法、程序,计算机才能做好计算。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Chrome限制第三方Cookie:未来无法再追踪你看过哪些敏感的“色色”内容了

当我们在浏览网络的时候,常听到「Cookie」这个词,但许多人可能不太清楚它到底是什么。最近,Google 宣布了一项重要更新,Google Chrome 将减少对第三方cookie 的支持,以提高用户隐私保护。 下面我会解释一下这个改变对…

打印机设置发票收据打印

由于各种打印机型号不一样,设置方式打印效果出入也很大,存在打印不全问题,发票右侧小数点后面的数字打印不出来、位置靠上下左右登问题,比较通用的设置方式如下: 首先找到控制面板,找到设备和打印机 进入到…

Aurora8B10B(二) 从手册和仿真学习Aurora8B10B

一. 简介 在上篇文章中,主要结合IP配置界面介绍了一下Aurora8B10B,这篇文章将结合文档来学习一下Aurora8B10B内部的一些细节 和 相关的时序吧。文档主要是参考的是这个 pg046-aurora-8b10b-en-us-11.1 二. Aurora8B10B内部细节 在手册上,对…

弧形导轨的精度等级

为符合工控自动化生产制造必须,弧形导轨在运输武器装备领域应时而生,并已在电子生产制造、手机上、半导体材料、动力锂电池等领域获得广泛运用。其中,弧形导轨的精度等级是评估其运动精度的重要指标,通常包括制造精度和运行精度两…

低代码核心能力详解:简化应用开发的新思路

低代码平台作为一种快速地应用开发解决方法,为中小企业实现数字化转型提供了机会。但是,对于一些刚开始触碰低代码平台的企业来说,了解其核心能力是很重要的。本文将详细分析低代码平台的核心能力,并在挑选低代码平台以前为中小企…

【星环云课堂大数据实验】InceptorSQL使用方法

文章目录 一、InceptorSQL概述二、实验环境三、实验准备四、实验目的五、实验步骤5.1 使用Waterdrop连接Inceptor5.2、WordCount5.3、外部表与内部表5.4、普通ORC表5.5、创建ORC事务表5.6、创建ORC分区表5.7、创建ORC分区分桶表 一、InceptorSQL概述 InceptorSQL是一个**分布式…

数据结构-迷宫问题

文章目录 1、题目描述2、题目分析3、代码实现 1、题目描述 题目链接:迷宫问题 、 注意不能斜着走! 2、题目分析 (1)0为可以走,1不能走且只有唯一一条通路 (2)我们可以通过判断上下左右来确定…

开酸奶店为何失败,5年创业者和你分享赚钱经验

我是张峻荣,开鲜奶吧已经有 5 年时间了,在自媒体创业板块也是小有名气,经常在网络上分享一些酸奶店的创业知识。今天我要和大家分享的是开酸奶店失败的原因,以及如何赚钱的经验。 5 年前,是我第一次创业失败&#xff…

activiti并行网关执行时每个关联表的变化

activiti并行网关执行时每个关联表的变化 文章目录 🔊流程图📆 通过请假节点📕通过一个并行节点🖥️再通过一个并行节点🔖再通过校长任务🖊️最后总结 🔊流程图 📆 通过请假节点 &l…

口袋参谋:新品上架,如何获取更多免费流量?

​新品上架 如何获得更多的免费流量? 我相信 这是99.999%的商家,都关心的问题! 今天我就来和大家好好说道说道。 01 流量的组成 新品本身是没有权重的,买家搜不到我们。 如果想要获得更多的免费流量,我们就要知道…

千梦网创:逮住一闪而过的机会疯狂摩擦

我这个人平时想的就多,睡觉也在想事情,有时候睡觉里想的事情往往都是很纯粹的、很绝妙的,但是经常性一醒过来就忘了,再去回忆怎么也想不起来了。 灵感只在特定的环境下产生,这类环境是不可再生和模拟的。 机会只因特…

17. 常用类

1.String类 1).什么是字符串? 字符串是由多个字符组成的一串数据(字符序列),字符串可以看成是字符数组. 2).String类的概述 String 类代表字符串。Java 程序中的所有字符串字面值(如 “abc” )都作为此类的实例实现。 字符串是常量;它们…

connect: Network is unreachable问题解决

第一步:查看ifcfg-ens33配置文件 cd /etc/sysconfig/network-scripts/ cat ifcfg-ens33 发现问题:GATEWAY写错成GATWAY 第二步:修改 vim ifcfg-ens33 第三步:检测是否成功 ping baidu.com 成功!

【Unity动画】实现不同的肢体动作自由搭配播放Layer+Avatar Mask

这个教程教你学会使用Unity 动画层配合布偶遮罩(AvaterMask) 实现从2个动画身上只保留部分肢体动作,然后搭配播放 例如:一个正常跑的动画片段,我只保留腿部动作,形成一个层叫Run_leg 然后在从一个攻击动作…

Java-File类与IO流(2)

我是南城余!阿里云开发者平台专家博士证书获得者! 欢迎关注我的博客!一同成长! 一名从事运维开发的worker,记录分享学习。 专注于AI,运维开发,windows Linux 系统领域的分享! 本…

b-tree b+tree两种区别

Btree多了叶子节点,并可以看到多了个箭头,这样查询比如大于>2,Btree更容易。而b--tree则要返到第一层、第二层才可以最得所有>2的数据

【STL容器】详解vector的使用和模拟实现

🍎 博客主页:🌙披星戴月的贾维斯 🍎 欢迎关注:👍点赞🍃收藏🔥留言 🍇系列专栏:🌙 STL函数专栏 🌙请不要相信胜利就像山坡上的蒲公英一…

自媒体新闻中心-后台管理端

0.本节内容说明 本节主要是一个功能概述,了解清楚这个这个后台管理端做的什么,以及实现的思路,具体的实现代码部分,后面讲解 1.后台功能概述 登陆: 账号密码登陆,或者是账号人脸进行登陆内容审核:对于用户…

LeetCode2961双模幂运算(相关话题:快速幂)

题目描述 给你一个下标从 0 开始的二维数组 variables ,其中 variables[i] [ai, bi, ci, mi],以及一个整数 target 。 如果满足以下公式,则下标 i 是 好下标: 返回一个由 好下标 组成的数组,顺序不限 。 示例 &…

分数约分-第11届蓝桥杯选拔赛Python真题精选

[导读]:超平老师的Scratch蓝桥杯真题解读系列在推出之后,受到了广大老师和家长的好评,非常感谢各位的认可和厚爱。作为回馈,超平老师计划推出《Python蓝桥杯真题解析100讲》,这是解读系列的第20讲。 分数约分&#xf…