CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C/C++ >  C语言

实现多元多项式类

楼主mydadou(mydadou)2002-08-20 09:58:23 在 C/C++ / C语言 提问

在实现多元多项式类的数据结构的使用上,我想有两种方法  
  一种是把每个项做成一个节点,这样的话就要动态的分配每个节点  
  另一种就是首先按x进行降幂排序,y,z等等作为系数,之后在每一项中,在按照y,z进行降幂排序,可是这么做在初始化的和进行运算符重载的过程中遇到了不少的困难。  
  所以,该用什么样的数据结构实现,怎样实现?  
  望诸位指点。  
  问题点数:100、回复次数:14Top

1 楼wistaria(听风听雨)回复于 2002-08-20 10:04:02 得分 0

感觉上还是把每项作为一个节点好些.Top

2 楼kof99th(小虫)回复于 2002-08-20 10:11:13 得分 0

第一种要好一点,直观。Top

3 楼mydadou(mydadou)回复于 2002-08-20 10:12:09 得分 0

但是,如果用第二种方法的话,如果方法好的话,可以用递归,比第一种方法效率高,  
  另外,一般做多项式多是按照第二种方法实现Top

4 楼mydadou(mydadou)回复于 2002-08-20 10:20:52 得分 0

另外,我要实现除法,第一种方法就太麻烦了  
  第二种方法可以提出系数,  
  f(x,y)=(3y^2+3y)x^2+(4y+3)x+33y;  
  g(x,y)=(y+1)x+(3y+2)  
  f=3*y*g(x,y)-k(y)x-h(y);  
  Top

5 楼mydadou(mydadou)回复于 2002-08-20 10:42:47 得分 0

望大家指点一下如何实现Top

6 楼eion(那个谁)回复于 2002-08-20 11:01:28 得分 0

你看这样是否合你意:  
   
  struct   POLY  
  {  
          double   coef;//系数  
          int         exp[10];   //   指数数组,exp[0]表示x的指数,exp[1]表示y的指数...  
          POLY*   next;//   链表,连接下一项  
  };  
   
  如果这样定义,那么你就可以将  
  3.7   *   x^7   *   y^3   *   z^4    
  表示为  
  coef   =   3.7;  
  exp[0]   =   7;   exp[1]   =   3;   exp[2]   =   4;  
  ...  
   
   
  我理解对否?Top

7 楼mydadou(mydadou)回复于 2002-08-20 11:06:03 得分 0

eion(那个谁):  
  首先谢谢你  
  但是有两个问题  
  1,数组的长度是不定的,因为不知道有几元  
  2,如何实现除法Top

8 楼mydadou(mydadou)回复于 2002-08-20 11:44:47 得分 0

关键是第二种方法的实现方法Top

9 楼eion(那个谁)回复于 2002-08-20 12:38:48 得分 50

数组长度不确定,可以采用再多一个变量——维数变量,然后再new,delete  
   
  多元多项式除法我没有做过,抱歉爱莫能助  
  如果是一元的多项式,你可以看看《高等代数》,里面有好几章都在讲多项式的除法Top

10 楼mydadou(mydadou)回复于 2002-08-20 12:45:43 得分 0

还是要谢谢eion(那个谁)Top

11 楼vampireonline(菜鸟)回复于 2002-08-20 12:49:03 得分 0

用广义表实现,详细情况请看清华大学出版社的《数据结构c++语言描述》(黄色封面的)Top

12 楼mydadou(mydadou)回复于 2002-08-20 12:51:38 得分 0

vampireonline(菜鸟)    
  能不能详细介绍一下Top

13 楼vampireonline(菜鸟)回复于 2002-08-20 12:56:09 得分 50

很难说明白的,最好是看看那本书,因为那里有详细的介绍,我考完期末考以后都忘记了,只记得有这样一种数据结构而已,真的很抱歉  
  ================================================================  
   
  CSDN   论坛助手   Ver   1.0   B0402提供下载。   改进了很多,功能完备!  
   
  ★     浏览帖子速度极快![建议系统使用ie5.5以上]。   ★     多种帖子实现界面。    
  ★     保存帖子到本地[html格式]★     监视您关注帖子的回复更新。  
  ★     可以直接发贴、回复帖子★     采用XML接口,可以一次性显示4页帖子,同时支持自定义每次显示帖子数量。可以浏览历史记录!    
  ★     支持在线检测程序升级情况,可及时获得程序更新的信息。  
   
  ★★   签名     ●      
            可以在您的每个帖子的后面自动加上一个自己设计的签名哟。  
   
  Http://www.ChinaOK.net/csdn/csdn.zip  
  Http://www.ChinaOK.net/csdn/csdn.rar  
  Http://www.ChinaOK.net/csdn/csdn.exe         [自解压]  
   
  Top

14 楼mydadou(mydadou)回复于 2002-08-21 11:29:03 得分 0

谢谢vampireonline(菜鸟)   ,我会去看一下的Top

相关问题

  • 一个用类实现多项式
  • 如何实现一元多项式的加、减、乘法?
  • 怎样自定义抽象数据类型实现多项式的加法?
  • 100分!!一元多项式的除法!!
  • 怎么样实现多项式的除法?
  • 多项式二元回归,高手看过来。
  • 单链表应用(一元多项式)...帮看看,谢谢了
  • 求多项式:
  • 高手牛人帮帮忙!用链表实现多项式相乘!!
  • 求助:求高手关于一元多项式计算的算法

关键词

  • .net
  • 数据结构
  • exp
  • csdn
  • 指数
  • 多项式
  • 帖子
  • 除法
  • 实现
  • 数组

得分解答快速导航

  • 帖主:mydadou
  • eion
  • vampireonline

相关链接

  • C/C++ Blog
  • C/C++类图书
  • C/C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo