做搜索关键词任务网站网站开发项目说明书

bicheng/2026/1/21 14:41:42/文章来源:
做搜索关键词任务网站,网站开发项目说明书,保健品网站源码,网络是哪家公司最好“ 本文主要讨论线性表在多项式计算中的应用#xff0c;讨论内容涉及到一元n次多项式在计算机中的表示#xff0c;及多项式相加运算。”01在数学上#xff0c;一个一元n次多项式可以按照升幂写成Pn(x) p0 p1x p2x2 …… pnxn它由n1个系数唯一确定。因此#xff0c;一个… “ 本文主要讨论线性表在多项式计算中的应用讨论内容涉及到一元n次多项式在计算机中的表示及多项式相加运算。”01在数学上一个一元n次多项式可以按照升幂写成Pn(x) p0 p1x p2x2 …… pnxn它由n1个系数唯一确定。因此一个一元n次多项式可以用一个线性表P来表示P (p0p1p2……pn)多项式每一项的指数隐含在线性表的序号里。假设Q是另外一个一元m次多项式同样也可以用线性表Q来表示Q (q0q1q2q2……qm)如果m因此多项式P和Q相加的结果可以用线性表R表示R (p0 q0p1 q1p2 q2……pm qmpm1……pn)由此可以看出一元n次多项式在计算机中可以用线性表来表示其加法运算也可以在线性表的基础上进行。但在实际应用中多项式的次数可能很高并且变化很大时使得线性表最大长度很难确定特别是在处理类似如下多项式时T(x) 12x2 2x120003x30000虽然多项式只有3项非零元素但仍然需要一个长度为30000的线性表来表示造成对内存空间的浪费。在程序设计中这种浪费是应当避免的。可以考虑用线性表存储多项式每项系数的同时也存储相应的指数这样就可以不用存储多项式的非零项了。一般情况下一元n次多项式也可以写成Pn(x) p1xe1 p2xe2 …… pmxem其中pi是指数为ei项的非零系数并且满足0e1 e2因此若用一个长度为m且每个元素有两个数据项(系数项和指数项)的线性表便可唯一确定多项式P(x)P ((p1e1)(p1e2)……(pmem))上面的式子在每项都不为零的情况下仅只比存储每项系数的方案多存储一倍的数据。但是对于T(x)类的多项式这种表示将极大节省存储空间。用线性表存储多项式可以采用两种存储结构一种是顺序存储结构一种是链式存储结构。在实际应用中具体采用什么存储结构则要视作什么运算而定。一般来说如果仅是求多项式值的运算宜采用顺序存储结构当需要修改多项式的系数和值时宜采用链式存储结构。例如  多项式P(x) 12 2x38x511x6线性表的表示为P ((120)(23)(85)(116))一元多项式相加的运算规则非常简单两个多项式中指数相同的项对应系数相加若相加的和不为零则构成相加结果多项式中的一项所有指数不相同的项均复制到相加结果多项式中。02下面用Java语言给出一元多项式表示及加法运算案例。前面讨论过用线性表存储多项式时宜采用系数项和指数项同时存储的结构。因此在案例中定义了PolyData类用于存储多项式的项数据。package com.milihua.algorithm.lineartable;public class PolyData { /** * 多项式系数项 */ public int coef; /** * 多项式指数项 */ public int expn; /** * 多项式项构造函数 */ PolyData(int coef,int expn){ this.coef coef; this.expn expn; } public int getCoef() { return coef; } public void setCoef(int coef) { this.coef coef; } public int getExpn() { return expn; } public void setExpn(int expn) { this.expn expn; }}多项式存储采用LinkedList类LinkedList是一个双向链表当数据量很大或者操作很频繁的情况下添加和删除元素时具有比ArrayList更好的性能。package com.milihua.algorithm.lineartable;import java.util.Iterator;import java.util.LinkedList;import java.util.Scanner;public class Polynomial { /** * 存储第一个多项式的链表 */ LinkedList polyListOne new LinkedList(); /** * 存储第二个多项式的链表 */ LinkedList polyListTwo new LinkedList(); /** * 存储运算结果的多项式链表 */ LinkedList polyListResult new LinkedList(); /** * 添加数据到链表尾部 * * param inPolyData * return */ public void addLastPol(LinkedList list, PolyData inPolyData) { list.addLast(inPolyData); } /** * 添加数据到链表 * * param inPolyData * return */ public void addPol(LinkedList list, PolyData inPolyData) { list.add(inPolyData); } /** * 比较每项的指数大小 * * param aExpen * param bExpn * return 0两个指数相等1第一个链表的指数大-1第二个链表的指数大 */ public int compExpn(int aExpen, int bExpn) { if (aExpen bExpn) { return 0; } else if (aExpen bExpn) { return 1; } else { return -1; } } /** * 两个多项式链表相加 * * return */ public void addPol() { for (Iterator iter polyListOne.iterator(); iter.hasNext();) { PolyData poly iter.next(); for (Iterator iterTwo polyListTwo.iterator(); iterTwo.hasNext();) { PolyData polyTwo iterTwo.next(); switch (compExpn(poly.expn, polyTwo.expn)) { case 0: PolyData newPolyData new PolyData(poly.coef polyTwo.coef, poly.expn); polyListResult.add(newPolyData); polyListTwo.remove(polyTwo); break; case 1: polyListResult.add(polyTwo); polyListResult.add(poly); polyListTwo.remove(polyTwo); break; case -1: polyListResult.add(poly); polyListResult.add(polyTwo); polyListTwo.remove(polyTwo); break; } break; } } } /** * 遍历链表并显示出来 * * param list */ public void display(LinkedList list) { for (Iterator iter list.iterator(); iter.hasNext();) { PolyData poly iter.next(); System.out.print(poly.getCoef() x^ poly.getExpn() ); } System.out.println(); } public LinkedList getPolyListOne() { return polyListOne; } public void setPolyListOne(LinkedList polyListOne) { this.polyListOne polyListOne; } public LinkedList getPolyListTwo() { return polyListTwo; } public void setPolyListTwo(LinkedList polyListTwo) { this.polyListTwo polyListTwo; } public LinkedList getPolyListResult() { return polyListResult; } public void setPolyListResult(LinkedList polyListResult) { this.polyListResult polyListResult; }}Polynomial类是案例文件的主要处理类在类中声明了三个LinkedList类分别存储第一个多项式、第二个多项式以及两个多项式相加运算的结果。Polynomial类的addPol()方法用于执行两个多项式的相加运算具体算法过程是(1)遍历第一个多项式(2)在遍历过程中处理每一个单项遍历第二个多项式比较两个单项式的指数若指数相同则两个单项式的系数相加并形成新的单项式添加到运算结果列表中若指数不相同则两个单项式都添加到运算结果列表中。addPol算法的执行频率为n*mn为第一个多项式的单项式个数m为第二个多项式的单项式个数其算法复杂度为O(n^2)。PolynomialTest类为测试类代码如下package unittest;import java.util.Scanner;import com.milihua.algorithm.lineartable.PolyData;import com.milihua.algorithm.lineartable.Polynomial;public class PolynomialTest { public static void main(String[] args) { Polynomial poly new Polynomial(); //声明Scanner变量并用new运算符实例化Scanner Scanner sc new Scanner(System.in); System.out.println(----请输入第一个多项式\r\n输入方式为“系数 指数”\r\n结束请输入0----); while(true) { String str sc.next(); if( str.equals(0) ) { System.out.println(----第一个多项式输入结束----); break; } String[] strArray str.split(,); if( strArray.length 2 ) { System.out.println(----输入的数据格式错误----); break; } int coef Integer.parseInt(strArray[0]); int expn Integer.parseInt(strArray[1]); PolyData polyData new PolyData(coef,expn); poly.addPol(poly.getPolyListOne(),polyData); } poly.display(poly.getPolyListOne()); System.out.println(----请输入第二个多项式\r\n输入方式为“系数 指数”\r\n结束请输入0----); while(true) { String str sc.next(); if( str.equals(0) ) { System.out.println(----第二个多项式输入结束----); break; } String[] strArray str.split(,); if( strArray.length 2 ) { System.out.println(----输入的数据格式错误----); break; } int coef Integer.parseInt(strArray[0]); int expn Integer.parseInt(strArray[1]); PolyData polyData new PolyData(coef,expn); poly.addPol(poly.getPolyListTwo(),polyData); } poly.display(poly.getPolyListTwo()); poly.addPol(); poly.display(poly.getPolyListResult()); }}用线性表存储一元多项式时线性表的元素由两部分组成一部分用于存储多项式的系数项一部分用于存储多项式的指数项。这种存储结构对指数项很高且变化很大的多项式特别有用。在存储多项式时线性表的存储结构可以采用顺序存储结构也可以采用链式存储结构推荐使用链式存储结构存储空间灵活其运算方便。一元多项式相加的运算规则非常简单两个多项式中指数相同的项对应系数相加若相加的和不为零则构成相加结果多项式中的一项所有指数不相同的项均复制到相加结果多项式中。多项式加法运算的时间复杂度为O(n)或O(n^2),算法不同其时间复杂度也不同。本文给出的案例时间复杂度为O(n^2)时间复杂度为O(n)的算法请自行给出。—END—编程训练营APP创新在线学习模式学习编程不再半途而废安卓手机应用商店搜索编程训练营下载

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

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

相关文章

wordpress 仿站 主题陕西城乡建设网官网

文章目录 QT安装与helloworld1.概念:2.安装QT3.配置环境变量4.创建项目5.运行效果 QT安装与helloworld 1.概念: Qt Creator是一个用于Qt开发的轻量级跨平台集成开发环境。Qt Creator可带来两大关键益处:提供首个专为支持跨平台开发而设计的…

学什么可以做视频网站网站开发设计的技术路线

文章目录 一、583、两个字符串的删除操作二、72、编辑距离三、完整代码 所有的LeetCode题解索引,可以看这篇文章——【算法和数据结构】LeetCode题解。 一、583、两个字符串的删除操作 思路分析:本题的思路和115、不同的子序列差不多,只是变成…

vs设置网站开发环境廉政网站建设

文章目录 1.前言2. Plex网站搭建2.1 Plex下载和安装2.2 Plex网页测试2.3 cpolar的安装和注册 3. 本地网页发布3.1 Cpolar云端设置3.2 Cpolar本地设置 4. 公网访问测试5. 结语 正文开始前给大家推荐个网站,前些天发现了一个巨牛的 人工智能学习网站, 通…

商标设计网站排行lamp 安装wordpress

在使用layui的form表单提交以后,请求状态总是canceled。后来在form表单的后面添加了一行代码: return false; 就可以了。 文档:https://www.layui.com/doc/modules/form.html#onsubmit 错误: 解决方法: 总结一下&…

php语言的网站建设贵阳有做网站的公司吗

1.简介在我们开发高性能代码时,需要各种针对性能优化进行编码。那么如何才能知道我们所加的代码是否有性能方面的正向优化呢?有了BenchmarkDotNet,做性能对比测试就非常容易了,只需要把你的测试方法加上特性[Benchmark], 想做不同…

网站建设与网页制作模拟试题seo入门版

平台RK3568 基线 3.2 beta 在移植Harmonys的时候发现一个问题,就是开机正常显示,uboot和kernel正常,开机后灭屏,等待系统进入Deep ,然后按power按键唤醒设备。此时出现花屏或者不显示问题 多次测试发现,如…

简单的网站架构东莞房价2022最新楼盘消息

0x01 产品简介 Progress Kemp LoadMaster是一款高性能的应用交付控制器,具有可扩展性,支持实体硬件和虚拟机的负载均衡。它提供了当今应用服务所需的各种功能,包括深度用户验证、资安防护(如WAF/IPS/DDoS防护)以及零信…

c 做网站教程哪个网站做app

一:首先, C中的explicit关键字只能用于修饰只有一个参数的类构造函数, 它的作用是表明该构造函数是显示的, 而非隐式的, 跟它相对应的另一个关键字是implicit, 意思是隐藏的,类构造函数默认情况下即声明为implicit(隐式). class CxString // 没有使用explicit关键…

网站流量分成asp网站查看器

来源: brainnews编辑部、inature编辑部来源:生物谷旗下细胞公众号,药明康德团队旗下学术经纬公众号Cell ,Nature和Science 三大期刊2020年年度最佳论文全部公布,brainnews编辑部摘选其中跟脑科学相关的文章,跟大家一起…

软件专业做学校网站论文怎么选题鞍山房产网

应届生求职面试注意事项 引言 对于即将毕业的应届生来说,进入职场是一个全新的挑战。在面对众多竞争者的情况下,成功通过面试是获得理想工作的关键一步。本文将介绍一些应届生求职面试的注意事项,帮助应届生更好地应对面试,提高…

石家庄站内换乘图解食品库存管理软件

目录 搜索与回溯 1222:放苹果 1221:分成互质组 1218:取石子游戏 数组 1126:矩阵转置 1127:图像旋转 1128:图像模糊处理 1120:同行列对角线的格 string 2046:【例5.15】替换…

南沙移动网站建设代理网址代码

引言: 新生儿夜惊是一种常见的现象,它可能让新父母感到焦虑和不安。夜惊通常表现为婴儿在夜间忽然惊醒、哭闹,并伴随着呼吸急促和肌肉紧张。尽管这在大多数情况下是正常的生理现象,但对于父母来说,了解夜惊的原因和适…

公司网站建设的费用浙江平湖建设局网站

使用ChatGPT创建Makefile构建系统:使用Make运行Docker 芯语芯愿(知乎/纷传/CSDN/);小石头的芯语芯愿(微信公众号) 开发高效现代的构建系统对于满足开发周期需求至关重要。原先,嵌入式开发者一…

深圳公司网站建设网页建设软件

目录 1.开发逻辑图及模块 2.编程实现语音和开发板通信 3.手机接入Linux热拔插相关,打开手机开发者模式允许USB调试 4.用shell指令来操作手机屏幕,模拟手动滑屏幕 5.最终主程序代码 1.开发逻辑图及模块 逻辑图: 模块 (1)语音…

宁波网站制作哪家优惠多中国物流企业网站建设问题

前面我们学习了单向链表,现在介绍单向循环链表,单向循环链表是单链表的一种改进,若将单链表的首尾节点相连,便构成单向循环链表结构,如下图: 对于一个循环链表来说,其首节点和末节点被连接在一起。这种方式…

雄县网站制作建设中心以前自己做的网站怎么样删除

近年来,随着经济不断发展、人们的收人水平不断提升、消费观念不断升级,我国已经进人消费转型升级阶段,对绿色消费方式与生活方式的培育产生了积极的推动作用。研究发现,从2012年开始,虽然我国生产领域的资源环境绩效有…

招网站开发人员安平县做网站的有哪些

(改了标题吸引目标用户) 老师教课,学生上课,首先要讲明师生关系。 其次,就是要说明这门课的底线是什么。 我们假设所有人写作业都独立思考,认真实践,不断改进,勇于创新... 这个假设通常是不全面的&#xf…

什么是网站seo猪八戒兼职网

全世界只有3.14 % 的人关注了青少年数学之旅相信很多人都听过南北蟑螂的故事,即使是一个可以打死老虎的北方人在南方蟑螂面前也会惊慌失措。除此之外,我们日常生活里和蟑螂的故事还有很多,比如:当你打开灯的时候,会有一…

成都做公司网站推广十个实用网站网址

学习目标: 计算机网络 1.掌握计算机网络的基本概念、基本原理和基本方法。 2.掌握计算机网络的体系结构和典型网络协议,了解典型网络设备的组成和特点,理解典型网络设备的工作原理。 3.能够运用计算机网络的基本概念、基本原理和基本方法进行…

手机网站页面镇江网页设计实战班

常见面试题 1.微服务篇 1.1.SpringCloud常见组件有哪些? 问题说明:这个题目主要考察对SpringCloud的组件基本了解 难易程度:简单 参考话术: SpringCloud包含的组件很多,有很多功能是重复的。其中最常用组件包括&…