PTA数据结构5-1,5-2

5-1 最大子列和问题

P.S:最大子列问题,原来就写过,很多地方也有,包括算法导论的时候也写了,而且这一题只需输出最大的和,也就更简单了,我的博客中也发发过噢,请参考   最大子列问题

5-2 一元多项式的乘法与加法运算

设计函数分别求两个一元多项式的乘积与和。

输入格式:

输入分2行,每行分别先给出多项式非零项的个数,再以指数递降方式输入一个多项式非零项系数和指数(绝对值均为不超过1000的整数)。数字间以空格分隔。

输出格式:

输出分2行,分别以指数递降方式输出乘积多项式以及和多项式非零项的系数和指数。数字间以空格分隔,但结尾不能有多余空格。

输入样例:
4 3 4 -5 2 6 1 -2 0
3 5 20 -7 4 3 1

输出样例:
15 24 -25 22 30 21 -10 20 -21 8 35 6 -33 5 14 4 -15 3 18 2 -6 1
5 20 -4 4 -5 2 9 1 -2 0

P.S:这个求一元多项式好像也是写过的,加法的话还好,对三种不同情况下分析,然后还有两个表分别为空的情况就可以了,乘法的话,是蛮不好写的,但是你自己分析一下之后,乘法就是通过加法组成的,所以需要两个循环,就如将a中每一个元素分别与b中的所有元素相乘,两个元素相乘是很好写的,就是指数相加,系数相乘嘛,然后再累加嘛,运算一次加一次。其中还有一些空链的情况呀需要进行判断分析。

code:

#include <stdio.h>
#include <stdlib.h>

using namespace std;

typedef int ElemtType;
typedef struct node *ptrNode;
typedef ptrNode LinkList;   //头节点
typedef ptrNode Position;   //中间结点

LinkList creatList(int n);
LinkList list_add(LinkList a, LinkList b);
LinkList list_mul(LinkList a, LinkList b);
void printList(LinkList L);


struct node {
    ElemtType coefficient;
    ElemtType exponent;
    Position next;
};


int main()
{
    int n1,n2;
    LinkList L1,L2,L3,L4;

    scanf("%d",&n1);
    L1 = creatList(n1);
    scanf("%d",&n2);
    L2 = creatList(n2);

    L3 = list_add(L1,L2);
    L4 = list_mul(L1,L2);
    printList(L4);
    printf("\n");
    printList(L3);

    return 0;
}

/* 创建指定大小的链表 */
LinkList creatList(int n)
{
    LinkList head, r, p;    //定义头节点
    int col,
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集 PTA-数据结构与算法题目集
很抱歉,我只是一个AI语言模型,无法直接为您完成作业。但我可以为您指导一下做作业的思路。 PTA数据结构与算法课程的作业5包含多道题目,涉及到树、哈希表、图等数据结构和算法的应用。建议您先仔细阅读题目,了解题目要求和限制条件,然后再进行代码实现。 以下是一些题目的思路: 1. 树的同构问题:判断两棵树是否同构,可以通过递归的方式对树进行遍历,比较两棵树的结构和值是否相同。需要注意的是,树的同构问题需要考虑到树的对称性,即对于树中的每个节点,其左右子树可以互换位置而不影响整棵树的结构。 2. 哈希表查找问题:给定一个哈希表和一个关键字,查找关键字在哈希表中的位置。可以使用哈希函数将关键字映射到哈希表中的位置,然后在该位置上查找关键字是否存在。需要注意的是,哈希表中可能存在哈希冲突的情况,因此需要使用开放地址法或链表法等解决冲突的方式。 3. 图的连通性问题:判断一个无向图是否连通,可以使用深度优先搜索或广度优先搜索遍历图中的所有节点,并标记已经访问的节点。如果遍历完成后所有节点都被标记了,则说明该图是连通的。如果图是有向图,则需要考虑到图的强连通性问题,可以使用Kosaraju算法或Tarjan算法进行求解。 希望以上思路对您有所帮助,祝您顺利完成作业!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值