3.6

原创 2016年08月29日 11:03:15
#include <iostream>
#include <stdlib.h>
#define MAX 5
using namespace std;
typedef struct node
{
    int num;
    int mi;
    struct node* pnext;
}qnode,*pnode;
pnode init()
{
    int size=MAX,num_,mi_;
    pnode head,p,q;
    head=(pnode)malloc(sizeof(qnode));
    head->pnext=NULL;
    q=head;
    while(size--)
    {
        p=(pnode)malloc(sizeof(qnode));
        cin>>num_>>mi_;
        p->num=num_;
        p->mi=mi_;
        q->pnext=p;
        q=p;
    }
    q->pnext=NULL;
    return head;
}
void traverse(pnode head)
{
    pnode q=head->pnext;
    while(q!=NULL)
    {
        cout<<q->num<<'X'<<q->mi<<' ';
        q=q->pnext;
    }
}
pnode add(pnode head1,pnode head2)
{
    int sum;
    pnode p,q,pra,prb;
    p=head1->pnext;
    q=head2->pnext;
    pra=head1;
    while(p!=NULL && q!=NULL)
    {
        if(p->mi<q->mi)
        {
            pra=p;
            p=p->pnext;
        }
        else if(p->mi==q->mi)
        {
            sum=p->num+q->num;
            if(sum==0)
            {
                p=p->pnext;
                q=q->pnext;
                pra->pnext=p;
            }
            else if(sum!=0)
            {
                p->num=sum;
                pra=p;
                p=p->pnext;
                q=q->pnext;
            }
        }
        else if(p->mi>q->mi)
        {
            prb=q;
            q=q->pnext;
            pra->pnext=prb;
            prb->pnext=p;
            pra=pra->pnext;
        }
    }
    if(q!=NULL)//当head1最高此幂也小于head2当前的幂的时候
    {
        pra->pnext=q;
    }
    return head1;
}
int main()
{
    pnode head1,head2;
    head1=init();
    head2=init();
    add(head1,head2);
    traverse(head1);
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

利用Python3.6制作带有简单的带有界面的有道翻译小程序

本人使用的是Python3.6(32bit),在win10上运行的 代码如下:from tkinter import * import urllib.request import urllib....
  • bjxdbz
  • bjxdbz
  • 2017年06月28日 20:09
  • 427

交叉编译基于ARM架构的linux-3.6内核遇到的问题及解决方法

交叉编译linux-3.6内核:

windows下面安装Python3.6和pip终极教程

在大二的时候接触过一段时间的Python,最近又开始玩起了这门语言。总的来说,个人很喜欢Python的语言风格,但是这门语言对于windows并不算很友好,因为如果是初学者在windows环境下安装,...
  • zytbft
  • zytbft
  • 2017年05月19日 21:32
  • 7786

3.6使用带头结点的循环链表链表表示队列

题目描述: 用带头结点的循环链表表示队列,并设置一个尾指针指向队尾元素。 不设置投指针。编写置队空,判断队空,出队,入队等算法,  /* 链队结构定义 */ //定义节...

JEECG 3.6 自定义表单版本发布,智能快速开发平台

JEECG 3.6(智能快速开发平台) 自定义表单版本发布 平台介绍: JEECG(J2EE Code Generation),一款基于代码生成器的JAVA快速开发平台,集成强大代码生成器和在线开发...

Python 3.6打包成EXE可执行程序

Python 3.6打包成EXE可执行程序 下载pyinstaller python 3.6 已经自己安装了pip,所以只需要执行 pip install pyinstaller就可以了打包程序进...
  • zt_xcyk
  • zt_xcyk
  • 2017年06月27日 13:12
  • 3918

python 3.6安装mysql以及不常见问题

在谷歌搜索上面找到的:python3.6 for mysql 的connector Connector/Python 2.2.2 https://dev.mysql.com/downloads/fi...

在pycharm2017 上实现python3.6与mysql数据库的连接

与其他的IDE不同,pycharm不需要额外下载mydqldb包等,pycharm里可以自动安装pymysql,功能与下载的mydqldb是一样的。 一、安装pycharm自带的pymysql 1、 ...

Python3.6获取QQ空间全部好友列表

首先要处理的是gtk算法:从上次分析以来代码并没有变 登录QQ空间后搜索gtk字符串,在三个js中出现了 operation.50303.js gdtlib.20160810.js index.js ...

3.6 判断两个无环链表是否相交 & 找出相交的第一个结点

1. 前言本文的一些图片, 资料 截取自编程之美2. 问题描述 3. 问题分析这两个问题也是非常经典的问题对于第一个问题 : 解法一 : 穷举, 穷举两个链表的各个元素, 判断有没有相同的结点解法...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:3.6
举报原因:
原因补充:

(最多只允许输入30个字)