当前位置: 首页 > article >正文

浙大数据结构:02-线性结构1 两个有序链表序列的合并

数据结构MOOC

PTA习题

02-线性结构1 两个有序链表序列的合并

用p1,p2存储两个头节点。如果都为空直接返回一个空链表

否则选两条链表中第一个较小的值作为新链表第一个结点。

L1,L2后移一下,然后删除两个没有用的头节点

循环遍历,把值小的插入链表中,直到一个链表遍历完。

再把没遍历完的链表插入新链表中,最后返回头节点

List Merge(List L1,List L2)
{
      List p1=L1,p2=L2;
List head=(List)malloc(sizeof(struct Node));
    if(p1->Next==NULL&&p2->Next==NULL)
    {
  head->Next=NULL;return head;
    }
    head->Next=L1->Next->Data>L2->Next->Data?L2->Next:L1->Next;
    List p=head;
     L1=L1->Next;L2=L2->Next;
     p1->Next=NULL;p2->Next=NULL;
    while(L1!=NULL&&L2!=NULL)
    {
     if(L1->Data<L2->Data)
     {
       head->Next=L1;
         head=head->Next;
         L1=L1->Next;
     }
        else 
        {
            head->Next=L2;
            head=head->Next;
            L2=L2->Next;
        }
    }
    if(L1)
    head->Next=L1;
    else if(L2)
        head->Next=L2;
    return p;
}


http://www.kler.cn/news/294797.html

相关文章:

  • [数据集][目标检测]西红柿成熟度检测数据集VOC+YOLO格式3241张5类别
  • 网络协议-SSH
  • Linux 上如何做MySQL数据备份
  • K近邻法(K-nearest neighbor,K-NN)—有监督学习方法、非概率模型、判别模型、线性模型、参数化模型、批量学习、核方法
  • ffmpeg音视频开发从入门到精通——ffmpeg 视频数据抽取
  • 【C++STL(十四)】一个哈希桶简单模拟实现unordered_map/set
  • 基于微信小程序在线订餐系统
  • 什么是串口服务器?
  • dwg、dxf文件多行文字转单行文字
  • NLP自然语言处理之文本分类项目实战TextCNN
  • LabVIEW中Request Deallocation 功能
  • 前端项目运行汇总
  • Kafka【十三】消费者消费消息的偏移量
  • 【Spring Boot】 SpringBoot自动装配-Condition
  • MySQL数据库的SQL注入漏洞解析
  • SpringDataJPA系列(7)Jackson注解在实体中应用
  • Python爬虫:通过js逆向获取某瓜视频的下载链接
  • OpenGL(二)-更详细版的三角形
  • Java项目——苍穹外卖(一)
  • TypeScript系列 :接口interfaces
  • BERN2(生物医学领域)命名实体识别与命名规范化工具
  • 机器学习(西瓜书)第 4 章 决策树
  • API安全 | 发现API的5个小tips
  • AtCoder Beginner Contest 370 Solution
  • vue如何实现路由缓存
  • 解决面板安装Node.js和npm后无法使用的问题
  • 浙大数据结构:堆栈和队列的定义与操作
  • 2024全国大学省数学建模竞赛A题-原创参考论文(部分+第一问代码)
  • 大数据-124 - Flink State 01篇 状态原理和原理剖析:状态类型 执行分析
  • 网页开发 HTML