导航:首页 > 源码编译 > 算法的描述方法优缺点

算法的描述方法优缺点

发布时间:2023-04-22 02:37:03

A. 简单说明运算法和时域法的优缺点

信息量大、不易看出。简单说明运算法和时域法的优点在于信息量大,缺点不易看出。算法是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,竖缓算法代表着用系散扰统的方法描述解决问题的策略机制。是求解问题类的、机械冲纤旦的、统一的方法。

B. 比较算法优缺点:

1.先来先服务先来先服务(FCFS, First Come First Serve)是最简单的调度算法,按先后顺序进行调度。1. 定义按照作业提交或进程变为就绪状态的先后次序,分派CPU;当前作业或进程占用CPU,直到执行完或阻塞,才出让CPU(非抢占方式)。在作业或进程唤醒后(如I/O完成),并不立即恢复执行,通常等到当前作业或进程出让CPU。2.适用场景比较有利于长作业,而不利于短作业。有利于CPU繁忙的作业,而不利于I/O繁忙的作业。
2. 轮转法轮转法(Round Robin)是让每个进程在就绪队列中的等待时间与享受服务的时间成正比例。1. 定义将系统中所有的就绪进程按照FCFS原则,排成一个队列。每次调度时将CPU分派给队首进程,让其执行一个时间片。时间片的长度从几个ms到几百ms。在一个时间片结束时,发生时钟中断。调度程序据此暂停当前进程的执行,将其送到就绪队列的末尾,并通过上下文切换执行当前的队首进程。进程可以未使用完一个时间片,就出让CPU(如阻塞)。2. 时间片长度的确定时间片长度变化的影响过长->退化为FCFS算法,进程在一个时间片内都执行完,响应时间长。过短->用户的一次请求需要多个时间片才能处理完,上下文切换次数增加,响应时间长。对响应时间的要求:T(响应时间)=N(进程数目)*q(时间片)就绪进程的数目:数目越多,时间片越小系统的处理能力:应当使用户输入通常在一个时间片内能处理完,否则使响应时间,平均周转时间和平均带权周转时间延长。
3. 多级反馈队列算法多级反馈队列算法(Round Robin with Multiple Feedback)是轮转算法和优先级算法的综合和发展。1. 定义设置多个就绪队列,分别赋予不同的优先级,如逐级降低,队列1的优先级最高。每个队列执行时间片的长度也不同,规定优先级越低则时间片越长,如逐级加倍。新进程进入内存后,先投入队列1的末尾,按FCFS算法调度;若按队列1一个时间片未能执行完,则降低投入到队列2的末尾,同样按FCFS算法调度;如此下去,降低到最后的队列,则按“时间片轮转”算法调度直到完成。仅当较高优先级的队列为空,才调度较低优先级的队列中的进程执行。如果进程执行时有新进程进入较高优先级的队列,则抢先执行新进程,并把被抢先的进程投入原队列的末尾。2.优点为提高系统吞吐量和缩短平均周转时间而照顾短进程。为获得较好的I/O设备利用率和缩短响应时间而照顾I/O型进程。不必估计进程的执行时间,动态调节3. 几点说明I/O型进程:让其进入最高优先级队列,以及时响应I/O交互。通常执行一个小时间片,要求可处理完一次I/O请求的数据,然后转入到阻塞队列。计算型进程:每次都执行完时间片,进入更低级队列。最终采用最大时间片来执行,减少调度次数。I/O次数不多,而主要是CPU处理的进程。在I/O完成后,放回优先I/O请求时离开的队列,以免每次都回到最高优先级队列后再逐次下降。为适应一个进程在不同时间段的运行特点,I/O完成时,提高优先级;时间片用完时,降低优先级。
4. 优先级法优先级算法(Priority Scheling)是多级队列算法的改进,平衡各进程对响应时间的要求。适用于作业调度和进程调度,可分成抢先式和非抢先式。1. 静态优先级作业调度中的静态优先级大多按以下原则确定:由用户自己根据作业的紧急程度输入一个适当的优先级。由系统或操作员根据作业类型指定优先级。系统根据作业要求资源情况确定优先级。进程的静态优先级的确定原则:按进程的类型给予不同的优先级。将作业的情态优先级作为它所属进程的优先级。2. 动态优先级进程的动态优先级一般根据以下原则确定:根据进程占用有CPU时间的长短来决定。根据就绪进程等待CPU的时间长短来决定。
5.短作业优先法短作业优先(SJF, Shortest Job First)又称为“短进程优先”SPN(Shortest Process Next);这是对FCFS算法的改进,其目标是减少平均周转时间。1. 定义对预计执行时间短的作业(进程)优先分派处理机。通常后来的短作业不抢先正在执行的作业。2. SJF的特点(1) 优点:比FCFS改善平均周转时间和平均带权周转时间,缩短作业的等待时间;提高系统的吞吐量;(2) 缺点:对长作业非常不利,可能长时间得不到执行;未能依据作业的紧迫程度来划分执行的优先级;难以准确估计作业(进程)的执行时间,从而影响调度性能。3. SJF的变型“最短剩余时间优先”SRT(Shortest Remaining Time)(允许比当前进程剩余时间更短的进程来抢占)“最高响应比优先”HRRN(Highest Response Ratio Next)(响应比R = (等待时间 + 要求执行时间) / 要求执行时间,是FCFS和SJF的折衷)6. 最高响应比优先法最高响应比优先法(HRN,Highest Response_ratio Next)是对FCFS方式和SJF方式的一种综合平衡。FCFS方式只考虑每个作业的等待时间而未考虑执行时间的长短,而SJF方式只考虑执行时间而未考虑等待时间的长短。因此,这两种调度算法在某些极端情况下会带来某些不便。HRN调度策略同时考虑每个作业的等待时间长短和估计需要的执行时间长短,从中选出响应比最高的作业投入执行。响应比R定义如下: R =(W+T)/T = 1+W/T其中T为该作业估计需要的执行时间,W为作业在后备状态队列中的等待时间。每当要进行作业调度时,系统计算每个作业的响应比,选择其中R最大者投入执行。这样,即使是长作业,随着它等待时间的增加,W / T也就随着增加,也就有机会获得调度执行。这种算法是介于FCFS和SJF之间的一种折中算法。由于长作业也有机会投入运行,在同一时间内处理的作业数显然要少于SJF法,从而采用HRN方式时其吞吐量将小于采用SJF 法时的吞吐量。另外,由于每次调度前要计算响应比,系统开销也要相应增加。

C. 如何判断一个数值计算方法的优劣

算法代表着用系统的方法描述解决问题的策略机制。也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。如果一个算法有缺陷,或不适合于某个问题,执行这个算法将不会解决这个问题。不同的算法可能用不同的时间、空间或效率来完成同样的任务。一个算法的优劣可以用空间复杂度与时间复杂度来衡量。

D. 算法可以使用哪些描述方式,各有什么优势

算法的描述方式主要有自然语言,流程图,伪代码等,它们的优势和不足可以简单地归纳如下:1、自然语言优势:自然语言描述的算法通俗易懂,不用专门的训练不足:a.由于自然语言的歧义性,容易导致算法执行的不确定性.b.自然语言的语句一般较长,导致描述的算法太长.c.当一个禅蔽陪算法中循环和分歧较多时就很并扰难清晰地表示出来.d.自然语言表示的算法不便翻译成计算机程序设计语言.2、流程图优势:流程图描述的算法清晰简洁,容易表达选择结构,它不依赖于任何具体的计算机和计算机程序设计语言,从而有利于不同环境的程序设计.不足:不易书写,修改起来比较费事,可以借助于专用的流程图制作软件来贺蠢提升绘制和修改.3、伪代码优势:伪代码回避了程序设计语言的严格、烦琐的书写格式,书写方便,同时具备格式紧凑,易于理解,便于向计算机程序设计语言过渡的优点.不足:由于伪代码的种类繁多,语句不容易规范,有时会产生误读.

E. 简述各种排序算法的优缺点

1、冒泡排序租肢法:优点是数据稳定误差小。缺点是弊掘世速度慢。

2、选择排序法:优点是移动数据的次数少。缺点是比较数据的次数多。

3、插入排散迅序法:优点是数据稳定且速度快。缺点是比较次数浮动较大。

4、缩小增量排序法:优点是速度快且数据可以按一定顺序排列。缺点是数据不稳定。

F. 常见的分类算法有哪些他们各自的优缺点是什么

优点:
1)所需估计的参数少,对于缺失数据不敏感。
2)有着坚实的数学基础,以及稳定的分类效率。
缺点:
1)假设属性之间相互独立,这往往并不成立。(喜欢吃番茄、鸡蛋,却不喜欢
吃番茄炒蛋)。
2)需要知道先验概率。
3)分类决策存在错误率。

优点:
1)不需要任何领域知识或参数假设。
2)适合高链激维数据。
3)简单易于理解。
4)短时间内处理大量数据,得到可行且效果较好的结果。
5)能够同时处理数据型和常规性属性。
缺点:
1)对于各类别样本数量不一致数据,信息增益偏向于那些具有更多数值的特征。
2)易于过拟合。
3)忽略属性之间的相关性。
4)不支持在线学习。

优点:
1)可以解决小样本下机器学习的问题。
2)提高泛化性能。
3)可以解决高维、非线性问题。超高维文本分类仍受欢迎。
4)避免神经网络结构选择和局部极小的问题。
缺点:
1)对缺失数据敏感。
2)内存消耗大,难以解释。
3)运行和调差略烦人。

优点:
1)思想简单,理论成熟,既可以用来做分类也可以用来做回归;
2)可用于非线性分类;
3)训练时间复杂度为 O(n);
4)准确度高,对数据没有假设,对 outlier 不敏感;
缺点:
1)计算量太大
2)对于枯唤盯样本分类不均衡的问题,会产生误判。
3)需要大量的内存。
4)输出的可解释性不强。

优点:
1)速度快。
2)简单易于理解,直接看到各个特征的权重。
3)能容易地更新模型吸收新的数据。
4)如果想要一个概率框架,动态调整分类阀值。
缺点:
特征处理复杂。需要归一化和较多的特征工程。

优点:
1)分类准确率高。
2)并行处理能力强。
3)分布式存储和学习能力强。
4)鲁棒性较强,不易受噪声影响。
缺点:
1)需要大量参数(网络拓扑、阀值、阈值)。
2)结果难以解释。
3)训练时间过长。

优点:
1)adaboost 是一种有很高精度的分类器。
2)可以使用各种方法构建子分类器,Adaboost 算法提供的是框架。
3)当使用简没和单分类器时,计算出的结果是可以理解的。而且弱分类器构造极其
简单。
4)简单,不用做特征筛选。
5)不用担心 overfitting。
缺点:
对 outlier (离群值)比较敏感

G. 算法三种描述方法的优缺点

本来算法和语言没有太大关系,用什么来描述都可以。优点:Java语言对于一些小的算法描述起来更方便,因为Java语言的抽象程度比较高。并且不用考略内存分配的问题。缺点:但是对于大型算法要考略到执行效率的时候,Java就不太适合,Java的运行速度相对于C/C++要慢一些,并且Java是在JVM虚拟机上运行的,虽然优点是跨平台,但是很多算法是要求和底层打交道,用Java反而显得不太方便。

H. 算法三种描述方法的优缺点

本来算法和语言没有太大关系,用什么来描述都可以。优点兄祥芹:Java语言对于一些小的算法描述起来更方便,因为Java语言的抽象程度比较高。并且不用考略内存分配的问题。缺点:但是对于大型算法要考略到执宴尺行效率的时候,Java就不太适合,Java的运行速度相对于C/C++要慢一些,并且Java是在JVM虚拟机上运行的,虽然优点是跨平台,但是很多算法是要求和底层打交道,用Java反羡毕而显得不太方便。

I. 算法的三中描述方法中,自然语言,流程图,程序代码的优缺点

一、自然语言:

优点:易于理解;

缺点:不能让计算机执行。

二、流程图:

优点:自然语言的时(顺)序描述,介于自然语言和程序代码之间;

缺点:不依赖于具体计算机CPU。

三、程序代码:

优点能让计算机理解执行,

缺点:需懂专业技能才能编写,不直观、错误不容易排查。

自然语言主要是指人类使用的语言,汇编语言是一种低级语言,是一种直接面向硬件的语言,C也算是一种高级语言,但是相对VB等就比较低级了,所以一般说是中级语言,别的基本都是高级语言。

(9)算法的描述方法优缺点扩展阅读:

例如,一张流程图能够成为解释某个零件的制造工序,甚至组织决策制定程序的方式之一。这些过程的各个阶段均用图形块表示,不同图形块之间以箭头相连,代表它们在系统内的流动方向。下一步何去何从,要取决于上一步的结果,典型做法是用“是”或“否”的逻辑分支加以判断。

J. 举例说明何谓算法,特点是什么评价一个算法的优劣,主要从哪些因素分析

评价算法优劣的四个分析因素:

1.正确性

能正确地实现预定的功能,满足具体问题的需要。处理数据使用的算法是否得当,能不能得到预想的结果。

2.易读性

易于阅读、理解和交流,便于调试、修改和扩充。写出的算法,能不能让别人看明白,能不能让别人明白算法的逻辑?如果通俗易懂,在系统调试和修改或者功能扩充的时候,使系统维护更为便捷。

3.健壮性

输入非法数据,算法也能适当地做出反应后进行处理,不会产生预料不到的运行结果。数据的形式多种多样,算法可能面临着接受各种各样的数据,当算法接收到不适合算法处理的数据,算法本身该如何处理呢?如果算法能够处理异常数据,处理能力越强,健壮性越好。

4.时空性

算法的时空性是该算法的时间性能和空间性能。主要是说算法在执行过程中的时间长短和空间占用多少问题。

算法处理数据过程中,不同的算法耗费的时间和内存空间是不同的。

(10)算法的描述方法优缺点扩展阅读:

算法是对特定问题求解步骤的一种描述,它是指令的有限序列,其中每一条指令表示一个或多个操作。此外,一个算法还具有下列5个重要的特性。

(1)、有穷性

一个算法必须总是(对任何合法的输入值)在执行有穷步之后结束,且每一步都可在有穷时间内完成。

(2)、确定性

算法中每一条指令必须有明确的含义,读者理解时不会产生二义性。即对于相同的输入只能得到相同的输出。

(3)、可行性

一个算法是可行的,即算法中描述的操作都是可以通过已经实现的基本运算执行有限次来实现的。

(4)、输入

一个算法有零个或多个的输入,这些输入取自于某个特定的对象的集合。

(5)、输出

一个算法有一个或多个的输出,这些输出是同输入有着某种特定关系的量。

阅读全文

与算法的描述方法优缺点相关的资料

热点内容
浙江标准网络服务器机柜云主机 浏览:587
设置网络的服务器地址 浏览:600
java图形界面设计 浏览:751
纯前端项目怎么部署到服务器 浏览:538
瓜子脸程序员 浏览:505
如何保证服务器优质 浏览:94
小微信aPP怎么一下找不到了 浏览:299
算法纂要学术价值 浏览:975
程序员你好是什么意思 浏览:801
倩女幽魂老服务器如何玩 浏览:561
电子钟单片机课程设计实验报告 浏览:999
看加密频道 浏览:381
程序员算不算流水线工人 浏览:632
三星电视我的app怎么卸载 浏览:44
简述vi编译器的基本操作 浏览:507
让程序员选小号 浏览:91
加强数字货币国际信息编译能力 浏览:584
购买的app会员怎么退安卓手机 浏览:891
程序员的种类及名称 浏览:293
美国程序员薪资 浏览:13