首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

求 一元多项式 顺序存储的兑现

2013-08-16 
求 一元多项式 顺序存储的实现。严蔚敏的《数据结构》中线性表的应用中有一个 一元多项式的 顺序存储结构,书

求 一元多项式 顺序存储的实现。
严蔚敏的《数据结构》中线性表的应用中有一个 一元多项式的 顺序存储结构,书上好像没有讲解如何实现,还请论坛的朋友们帮忙贴下实现的C代码,最好有详细注释,谢谢! 数据结构 严蔚敏 C 一元多项式 顺序存储结构
[解决办法]
严老的书怎么说的,我已经忘记了,以我的想法,写个范例供参考,抛砖引玉


#define MAX_LEN 10//项数
struct node{
int val;//系数
int exp;//阶数
};
struct node *poly = (struct node *)malloc(MAX_LEN * sizeof(struct node));//线性表
int i;
for(i = 0; i < MAX_LEN; ++i)//采集数据
{
    scanf("%d", &((poly + i)->exp));
    scanf("%d", &((poly + i)->val));
}

[解决办法]
引用:
Quote: 引用:

严老的书怎么说的,我已经忘记了,以我的想法,写个范例供参考,抛砖引玉


#define MAX_LEN 10//项数
struct node{
int val;//系数
int exp;//阶数
};
struct node *poly = (struct node *)malloc(MAX_LEN * sizeof(struct node));//线性表
int i;
for(i = 0; i < MAX_LEN; ++i)//采集数据
{
    scanf("%d", &((poly + i)->exp));
    scanf("%d", &((poly + i)->val));
}



首先,非常感谢你的回答。其实我想问的是用顺序表来存储一元多项式,线性表每个元素只存放系数,指数用元素的序号表示。


那更好办喽

int *poly = (int*)malloc(MAX_LEN * sizeof(int));
{//需要循环
scanf("%d", &i);//阶
scanf("%d", poly + i);//系数
}

[解决办法]
引用:
Quote: 引用:

Quote: 引用:

Quote: 引用:

严老的书怎么说的,我已经忘记了,以我的想法,写个范例供参考,抛砖引玉


#define MAX_LEN 10//项数


struct node{
int val;//系数
int exp;//阶数
};
struct node *poly = (struct node *)malloc(MAX_LEN * sizeof(struct node));//线性表
int i;
for(i = 0; i < MAX_LEN; ++i)//采集数据
{
    scanf("%d", &((poly + i)->exp));
    scanf("%d", &((poly + i)->val));
}




首先,非常感谢你的回答。其实我想问的是用顺序表来存储一元多项式,线性表每个元素只存放系数,指数用元素的序号表示。


那更好办喽

int *poly = (int*)malloc(MAX_LEN * sizeof(int));
{//需要循环
scanf("%d", &i);//阶
scanf("%d", poly + i);//系数
}


呵呵,感谢你的思路,但是你说得可能和我想的不一样。可以邀请你看看我的写日志,初出茅庐,欢迎各位的指教,谢谢。
http://user.qzone.qq.com/496003838/blog/1376450206#!app=2&via=QZ.HashRefresh&pos=1376450206


看到你的日志了,整体还是不错的,加油。
我建议你使用动态分配,系数和阶整合成结构体
顺序存储有点浪费空间,而且不能灵活变化,比如你需要输入x^100 - 1多项式,那么1-99都浪费了

热点排行