软件设计师考试笔记,已通过

目录

系统可靠度

外部实体

内聚类型

编译过程

逆波兰式

前驱图

scrum框架模型

编译和解释

有限自动机

聚簇索引和非聚簇索引

二叉树的前序,中序,后序遍历

动态规划贪心算法

算法

01背包问题


系统可靠度

1. 串联部件可靠度

  串联部件想要这条路走通,只有一种情况也就是每个部件都有效,即每个部件都可靠。

所以:

串联部件可靠度=各可靠度的乘积

 

2. 并联部件可靠度

  并联部件想要这条路走通情况有很多种,但是走不通的情况只有一种,即每个部件都无效。所以我们只要排除走不通的那种情况,剩下的都是成功情况:

并 联 部 件 可 靠 度 = 1 − 部 件 失 效 的 乘 积 并联部件可靠度 = 1-部件失效的乘积

并联部件可靠度=1−部件失效的乘积

 

外部实体

外部实体又称“外部项”,是指独立于系统而存在的,但又和系统有联系的实体。

它表示数据的外部来源和最后去向,在外部实体中的条目主要说明外部实体产生的数据和输入的数据及外部实体的数量。例如顾客、仓库、查询者等。确定系统与外部环境之间的界限,从而可确定系统的范围。

外部实体也可以是另外一个信息处理系统,向该系统提供数据或接受来自本系统向它发出的数据。

内聚类型

按内聚的紧密程度从低到高排列,次序为偶然内聚、逻辑内聚、时间内聚、过程内聚、通信内聚、顺序内聚、功能内聚。偶然内聚,指某些处理单元偶然放在一个模块里了,内聚性最弱;逻辑内聚是指把几个逻辑上相关的处理单元放在同一模块中(如“数学计算模块”中的加减乘除等处理单元,所有单元都用来实现数学计算,但单元与单元间并无必然的联系,内聚性仅比偶然内聚强;时间内聚指模块所包含的处理单元必须在同一时间段内执行(如“系统初始化模块”,单元与单元可能互不相关,但必须在同一时间段内完成):过程内聚是指模块包含的多个处理单元,需按一定步骤一次完成(如“系统登录模块”的“权限检查单元”和“权限分配单元”:通信内聚指模块内的处理单元都操作同一数据集或生成同一数据集;顺序内聚指处理单元都与同一功能密切相关,且需顺序执行;功能内聚指模块内的各个处理单元,共同完成一个单一功能。

编译过程

将编译器的工作过程划分为词法分析、语法分析、语义分析、中间代码生成、代码优化和目标代码生成。

词法分析器的任务是把源文件的字符流转换成记号流;

语法分析器根据语法规则识别出记号流中的结构(短语、句子),并构造一棵能够正确反映该结构的语法树;

语法分析主要检查句子的结构是否符合语法规则,“程序中的括号不配对”属于语法错误。

逆波兰式

逆波兰式(Reverse Polish notation,RPN,或逆波兰记法),也叫后缀表达式(将运算符写在操作数之后)。例如:3*(2-(5+1)),用逆波兰式来表示是:3 2 5 1 + - *,也就是把操作运算符往操作数后面放。

逆波兰式是把运算符写在运算对象之后的一种表达式的表示方法。如:“a-b”写成“ab-”。

前驱图

进程 P1、P2 、P3、P4 和 P5 的前趋图如下所示:

 

这是一道关于进程管理的题目,主要是给出进程的前驱图然后要我们根据图示来判断每个进程的执行状态,对于这种题目我们看答案可能会很懵逼尤其是关于解释P(X)和V(X),在这里我用自己的粗鲁的理解为大家解释下:

P(X):这个主要就是检查上一个进程是否完成

V(X):就是唤醒当前进程指向的下一个进程

【进程管理】进程 P1、P2 、P3、P4 和 P5 的前趋图如下所示:_进程p1,p2,p3,p4,p5的前趋图_流年若逝的博客-CSDN博客

scrum框架模型

Scrum的目标是“交付最高的商业价值,通过尽量短的时间”。用英文表达可能更准确一些,中文的语义比较容易混淆。Scrum的目标并不是“在最短的时间内交付最高的商业价值”,它强调的不是最短的时间,而是价值。我们关注的是如何在交付最高价值的前提下花费更少的时间。

即3-3-5-5模型,是指scrum包括3个工件、3个角色、5个价值观、5个事件。3个工件分别是Product Backlog、Sprint Backlog、Product Increment:3个角色分别是ProductOwner、Scrum Master、Development Team;5个价值观分别是勇气、专注、承诺、尊重、开放;5个事件分别是Sprint、Sprint Planning、Daily Scrum、Sprint Review、Spring Retrospective.。可见,scrum的步骤并不包括Refactoring(代码重构)。

 

勇气:面对难题团队成员都有勇气做正确的事情和工作

专注: 团队成员要专注于冲刺要完成的工作以及团队目标

承诺: 团队成员对完成Sprint目标做出承诺

尊重:团队成员之间都尊重对方是有能力的、独立的人

开放:Scrum团队以及利益相关者对所有的工作以及完成工作所面临的挑战的开放性一致认同。

编译和解释

试题分析在编译方式下,编译过程生成的是与源程序等价的目标程序,源程序和编译程序都不再参与目标程序的执行过程;而在解释方式下,解释过程生成的不是源程序的目标程序,而是中间代码。

有限自动机

是一种具有离散输入/输出系统的数学模型,简称 有限自动机。这一系统具有任意有限数量的内部“状态”。

状态:一个标识,能区分自动机在不同时刻的状况。有限状态系统具有任意有限数目的内部“状态”

自动机接受一定的输入,执行一定的动作,产生一定的结果。

自动机的本质:根据状态、输入和规则决定下一个状态

 

聚簇索引和非聚簇索引

  1、聚簇索引和非聚簇索引:

    我拿查字典做一个比喻,字典的页面就好比是物理排列顺序,物理排列顺序是固定的,查询的方式就好比是索引,区别是聚簇索引就好比是拼音查询,每一个字母查询出来的页面顺序是跟你字母的顺序一致的,a字母查询出来的页面一定是在c字母查询出来的页面前面,而非聚簇索引就好比是笔画查询,笔画少的查出来的页面不一定在笔画多的查出来的页面前面,也就是你通过笔画查询的顺序和页面的顺序并不是一致的。

    再举一例:聚簇索引的顺序就是数据的物理存储顺序,而对非聚簇索引的索引顺序与数据物理排列顺序无关。举例来说,你翻到新华字典的汉字“爬”那一页就是P开头的部分,这就是物理存储顺序(聚簇索引);而不用你到目录,找到汉字“爬”所在的页码,然后根据页码找到这个字(非聚簇索引)

   索引的叶节点就是数据节点。非聚簇索引的叶节点仍然是索引节点,只不过有一个指针指向对应的数据块

概念模式也称模式,是对数据库中全部数据的整体逻辑结构的描述;外模式也称用户模式或子模式,是用户与数据库系统的接口,是对用户用到的那部分数据的描述;内模式也称存储模式,是对数据库在物理存储方面的描述,定义所有内部记录类型、索引、文件的组织方式以及数据控制方面的细节。这三种模式构成了数据库的三级模式。可见,索引属于内模式。

二叉树的前序,中序,后序遍历

前序遍历:根节点->左子树->右子树(根->左->右)

中序遍历:左子树->根节点->右子树(左->根->右)

后序遍历:左子树->右子树->根节点(左->右->根)

技巧:看根节点打印的顺序,出现在前还是中,后.

 

前序遍历:GDAFEMHZ

中序遍历: ADEFGHMZ

后序遍历:AEFDHZMG

首先说说什么是度:通俗的讲二叉树中连接节点和节点的线就是度,有n个节点,就有n-1个度,节点数总是比度要多一个,那么度为0的节点一定是叶子节点,因为该节点的下面不再有线;度为1的节点即:该节点只有一个分支;同理度为2的节点就是有两个分支。在二叉树中不可能存在度为3或大于3的节点!

关于度和节点之间的关系还有很多公式:度为0的节点数为度为2的节点数加1,即n0=n2+1

这个公式的推理方法如下:

设:

k:总度数

k+1:总节点数

n0:度为0的节点

n1:度为1的节点

n2:度为二的节点

根据二叉树中度和节点的守衡原理,可列出以下一组方程:

k=n2*2+n1;

k+1=n2+n1+n0;

将上面两式相减得到:n0=n2+1;

动态规划贪心算法

动态规划算法适合解决0-1背包问题,贪心算法适合解决部分背包问题。

算法

01背包问题

  1. 什么叫01背包问题?

每一个物品只有1个,要么全拿,要么不拿,最后使得拿到的物品的总价值最大。

背包问题通俗的说,就是假如你面前有5块宝石分别为a, b, c, d, e,每块宝石的重量不同,并且每块宝石所带来的价值也不同(注意:这里宝石的重量的价值没有特定关系),目前我们有一个背包,只有固定的容量,要解决的问题就是在一定容量的背包面前装哪几块宝石才能获取到最大的价值,对于每块宝石我们只有拿或者不拿这两种选择,拿为1不拿为0,因此叫做0-1背包问题,下面通过一个例子来深入理解背包问题

2.01背包问题例子

假设a, b, c, d, e五块宝石的重量分别为为2, 2, 6, 5, 4,价值分别为6, 3, 5,4, 6 ,我们目前的背包可以装重量为10的物品,怎么装才能使得获取的价值最大?

首先对于我们人去操作而言,首先考虑应该是质量最轻,并且价值最大的,从数据中我们可以看到宝石a质量最小,且价值最大,应该优先考虑装这一块,然后依次考虑其他的。这种方式就是考虑性价比最高的宝石。我们可以将这个问题进行简化,目前是背包承重为10,因此我们的选择较多,不知从何下手,那么我们假设背包的承重为5或者是3甚至是2, 1。在这种情况下,我们的选择就不多了,对于人类选择也是,在选择不多的情况下更容易找出最优方案,同样计算机也是。因此我们的背包问题也是从这开始,将选择较多的问题转化为选择不多的问题。在选择不多的情况下进行选择,有利于比较判断,依次递增,最后解决背包承重为10的问题。

最后推荐一个图片转文字网站

最后推荐一个抖音去水印在线工具

最后推荐一个PPT模板下载网站

最后推荐一个图片转文字网站
https://ocr.bytedance.zj.cn/image/ImageText

最后推荐一个抖音去水印在线工具
https://ocr.bytedance.zj.cn/douyin

最后推荐一个PPT模板下载网站
https://ocr.bytedance.zj.cn/ppt

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

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

相关文章

062:cesium设置泛光折线材质(material-6)

第062个 点击查看专栏目录 本示例的目的是介绍如何在vue+cesium中设置泛光折线材质,请参考源代码,了解PolylineGlowMaterialProperty的应用。 直接复制下面的 vue+cesium源代码,操作2分钟即可运行实现效果. 文章目录 示例效果配置方式示例源代码(共89行)相关API参考:专…

开发框架Furion之WebApi+SqlSugar (一)

目录 1.开发环境 2.项目创建 2.1创建WebApi主项目 2.2 创建Start类库 2.3创建Model实体类库 2.4创建Application仓储业务类库 2.5创建Unility通用方法类库 3.基础功能配置 3.1 Model实体对象与数据表映射 3.2 基类仓储及动态Api接口配置 3.3 数据库IOC注册 3.4 Star…

JDK源码阅读环境搭建

本次针对jdk8u版本的搭建 1.新建项目 新建java项目JavaSourceLearn ,这里我创建的是maven 2.获取JDK源码 打开Project Structure 找到本地JDK安装位置将src.zip解压到项目java包中 整理下项目结构,删除用不到的目录 提示: 添加源码到项目之后首次运行…

从零玩转设计模式之原型模式-yuanxingmoshi

title: 从零玩转设计模式之原型模式 date: 2022-12-11 20:05:35.488 updated: 2022-12-23 15:35:44.159 url: https://www.yby6.com/archives/yuanxingmoshi categories: - 设计模式 tags: - 设计模式 - 原型模式 什么是原型模式设计模式? 原型模式是一种软件设计模式&#…

公司招了一个00后,以为是个小年轻,没想到人家是个卷王...

公司前段缺人,也面了不少测试,结果竟然没有一个合适的。一开始瞄准的就是中级的水准,也没指望来大牛,提供的薪资也不低,面试的人很多,但平均水平很让人失望。 令我印象最深的是一个00后测试员,…

【Linux高级 I/O(2)】如何使用阻塞 I/O 与非阻塞 I/O?——select()函数

上次我们虽然使用非阻塞式 I/O 解决了阻塞式 I/O 情况下并发读取文件所出现的问题,但依然不够完美,使得程序的 CPU 占用率特别高。解决这个问题,就要用到本文将要介绍的 I/O 多路复用方法。 何为 I/O 多路复用 I/O 多路复用(IO m…

AI 将完全取代前端开发吗?

注:今晨,我浏览 Medium,看到了篇颇为标题党的文章,于是我就将它抛给了 ChatGPT。本篇文章全部由 ChatGPT 所写。同时,我也请 ChatGPT 分享了它对此的观点。 最近,我的同事向我讲述了他与他老板的一次谈话。…

Python机器学习:Scikit-learn和TensorFlow的应用和模型设计

一、引言 Python在机器学习领域中已经成为非常受欢迎的编程语言。Scikit-learn和TensorFlow是Python中应用最广泛的两个机器学习库,它们提供了丰富的机器学习算法和工具,帮助开发人员轻松地构建和训练机器学习模型。本文将详细介绍Scikit-learn和Tensor…

功率放大器的选型原则和方法是什么

功率放大器是一种能够将低电平信号放大到足够高的电平以驱动负载的电子器件。在各种电子设备中,功率放大器被广泛应用,如音响系统、电视广播、汽车音响、射频通信等。因此,正确选型功率放大器非常重要,可以提高设备的性能和可靠性…

如何在linux中配置JDK环境变量

在linux系统部署皕杰报表,因皕杰报表是一款纯java报表工具,运行时需要jre环境,所以要在服务器上配置三个jdk环境变量path、classpath、JAVA_HOME。 那么为什么要配置jdk环境变量呢?因为java软件运行时要用到一些java命令&#xff…

Python挑选出无Labelme标注文件的图片文件

Python挑选出无Labelme标注文件的图片文件 前言前提条件相关介绍实验环境Python挑选出无Labelme标注文件的图片文件代码实现输出结果 前言 本文是个人使用Python处理文件的电子笔记,由于水平有限,难免出现错漏,敬请批评改正。 (https://blog.…

JAVA常用API - Runtime和System

文章目录 前言 大家好,我是最爱吃兽奶,今天给大家带来JAVA常用API中的Runtime类和System类 那么就让我们一起去看看吧! 一、Rubtime 1.Rubtime是什么? 2.Runtime常用方法 Runtime提供了很多方法,在这里演示两个 public static Runtime getRuntime(): 返回当前运行时环境的…

Ada 语言学习(3)复合类型数据——Array

文章目录 Array数据类型声明数组索引数组范围数组复制数组初始化直接赋值通过拷贝赋值不同索引范围但长度相等非指定类型边界收缩 多维数组数组遍历数组切片访问和动态检查直接访问动态检查 数组字面量 Array literal数组拼接两个数组拼接数组和单个值拼接 Array Equality&…

SpringBoot【开发实用篇】---- 整合第三方技术(消息)

SpringBoot【开发实用篇】---- 整合第三方技术(消息) 消息的概念Java处理消息的标准规范JMSAMQPMQTTKafka 购物订单发送手机短信案例订单业务短息处理业务 SpringBoot整合ActiveMQ安装整合 SpringBoot整合RabbitMQ安装整合(direct模型&#x…

加密解密软件VMProtect教程(六):主窗口之控制面板“项目”部分(2)

VMProtect 是新一代软件保护实用程序。VMProtect支持德尔菲、Borland C Builder、Visual C/C、Visual Basic(本机)、Virtual Pascal和XCode编译器。 同时,VMProtect有一个内置的反汇编程序,可以与Windows和Mac OS X可执行文件一起…

solidworks2020及麦迪工具箱安装

1、麦迪工具箱安装 1)下载 下载链接:www.maidiyun.com/download 下载今日制造 2)安装 由于电脑上安装了杀毒软件,会直接删除解压后的安装包,因此需要关闭杀毒软件或者在被删除后进入杀毒软件的隔离区将该文件添加…

Tomcat安装与使用

Tomcat 是HTTP服务器,用于使用HTTP协议。 1、下载Tomcat 下载链接:https://tomcat.apache.org/ 进入官网后,根据自己想要下载的版本进行下载,我这里选择下载的版本是Tomcat 8. 点击选择自己想要下载的对应版本,下载Z…

Netty入门

Netty入门 1. 概述 1.1 Netty是什么? Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients.以上片段摘自官网,Netty 是一个异步的、基于事…

三十六、链路追踪、配置中心

1、链路追踪 在一次调用链路中,可能设计到多个微服务,如果在线上,某个微服务出现故障,如何快速定位故障所在额微服务呢。 可以使用链路追踪技术 1.1链路追踪介绍 在大型系统的微服务化构建中,一个系统被拆分成了许多微…

chatgpt赋能Python-python3_排序

Python3 排序指南:介绍、说明和实践 Python3是当今最受欢迎的编程语言之一,拥有许多可用于各种任务的库和框架。其中之一是它自带的排序函数,在数据分析和机器学习等领域中非常有用。 在本篇文章中,我们将简要介绍Python3的排序和…