数据结构与算法-D5-D7线性表之链表

结点类型描述

程序编写 

节点定义

linklist.h 

 linklist.c

 list_create

        1、申请内存

        2、赋值

        3、返回头结点

 list_tail_insert

        1、建立一个新结点

        2、找尾结点

        3、尾部插入

 list_show

 list_insert

链表在某一位置的插入

        1、调用算法list_get

        2、插入

                1)新节点

                2)两个指向更正

 

list_get

获取指定位置的结点

 

list_delete

        1、找前驱

        2、更改指向

        3、free

 list_free

 

 

加上178行作用是为了防止重复释放内存 ,但此时并不会将H置为NULL,因为此时H是一个形参,main真正的H并没有被修改

所以为了修改,可以返回linklist,并且返回NULL,并且在main中使用H接收(27行)

链表的复杂操作实现

链表翻转

        依次取原链表中各结点,将其作为新链表首结点插入H结点之后

 1、H == NULL或者只有一个结点、

 2、定义P指向第二个结点,不断遍历

3、H后的插入,P移动

链表求相邻两个结点最大值

设结点data域为整型,求链表中相邻两结点data值之和为最大的第一结点的指针

思路:设p,q分别为链表中相邻两结点指针,求p->data+q->data为最大的那一组值,返回其相应的指针p即可。

1、结点个数<=2,退出

2、p和q,sum的初始化

3、p和q,sum的更新,返回值的更新

有序链表合并

 设两单链表A、B按data值(设为整型)递增有序,将表A和B合并为表A,且表A也按data值递增有序

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/204190.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MySQL常见的存储引擎(InnoDB、MyISAM)data目录下(.frm,.myi,.myd)

查看支持的存储引擎 SHOW ENGINES;show variables like %storage_engine%; 看你的mysql当前默认的存储引擎:data目录 如果一个表同时有这3个文件&#xff0c;则存储引擎是myisam&#xff1a; &#xff08;1&#xff09;*.frm--表定义&#xff0c;是描述表结构的文件。 &#…

低代码(Low Code):美味膳食还是垃圾食品?如何入门低代码?

文章目录 低代码&#xff1a;美味膳食还是垃圾食品&#xff1f;1. 什么是低代码开发&#xff1f;2. 低代码开发的优势2.1 提高效率2.2 降低门槛 3. 低代码开发的挑战3.1 安全性问题3.2 可扩展性和灵活性问题 4. 低代码开发是美味膳食还是垃圾食品&#xff1f;5. 低代码能否替代…

【Android】查看keystore的公钥和私钥

前言&#xff1a; 查看前准备好.keystore文件&#xff0c;安装并配置openssl、keytool。文件路径中不要有中文。 一、查看keystore的公钥&#xff1a; 1.从keystore中获取MD5证书 keytool -list -v -keystore gamekeyold.keystore 2.导出公钥文件 keytool -export -alias …

基于超声技术的气体流量测量仪设计

摘要 科学地解决能源三气的计量问题&#xff0c;一直是业界困扰的问题。进入二十一世纪以来&#xff0c;用于测量气体流量的超声波流量计以其无压损、无阻力、量程比宽、受流体限制少等优点受到业界的广泛关注。随着国内人民生活水平的提高&#xff0c;科技不断地进步&#xff…

slurm学习(1)

slurm 指定节点SLURM 使用基础教程slurm节点,分区,作业信息说明slurm作业提交系统常用命令slurm nodelist中国科大超算中心用户使用手册slurm&#xff1a;使用nodelist中的任何节点SLURM 使用参考Slurm执行的CPU管理步骤 (我想提高我的cpu利用率来着&#xff0c;可是没看明白这…

iOS常用第三方框架

1、网路请求 -- Moya 2、数据存储处理 -- SQLite.swift 3、数据解析、转换 -- SwiftyJSON、ObjectMapper 4、对NSUserDefaults的封装 -- SwiftyUserDefaults 5、图片加载、处理 -- SDWebImage 6、轮播图 -- FSPagerView 7、键盘管理 -- IQKeyboardManagerSwift 8、弹框提…

天线是什么

天线 电子元器件百科 文章目录 天线前言一、天线是什么二、天线的类别三、天线的应用实例四、天线的作用原理总结前言 不同种类和设计的天线用于不同的应用领域,如广播、电视、无线通信、雷达、卫星通信、导航系统等。常见的天线类型包括柱状天线、片状天线、螺旋天线、饼叶天…

JavaScript <关于AES/DES`代码+白话`讲解和对比>--案例(四)

前言: 有XX私信,说他对于aes和des的解密有点混淆;说实话,我当初也混淆.其实案例搞多了,就清楚了;但是,今天把它稍微梳理一下,整理出来,对你对我都是交代; 正文: AES&#xff08;Advanced Encryption Standard&#xff09;和 DES&#xff08;Data Encryption Standard&#xf…

Node.js快速搭建简单的HTTP服务器并发布公网远程访问

文章目录 前言1.安装Node.js环境2.创建node.js服务3. 访问node.js 服务4.内网穿透4.1 安装配置cpolar内网穿透4.2 创建隧道映射本地端口 5.固定公网地址 前言 Node.js 是能够在服务器端运行 JavaScript 的开放源代码、跨平台运行环境。Node.js 由 OpenJS Foundation&#xff0…

TCP传输的三次握手四次挥手策略

TCP传输的三次握手四次挥手策略如下&#xff1a; 第一次握手&#xff1a;客户端发送一个带有SYN标志的数据包给服务器&#xff0c;并记为SYN_Client。第二次握手&#xff1a;服务器收到SYN_Client后&#xff0c;向客户端发送一个带有SYN和ACK标志的数据包&#xff0c;记为SYN_…

西工大计算机学院计算机系统基础实验一(函数编写15~17)

还是那句话&#xff0c;稳住心态&#xff0c;稳住心态&#xff0c;稳住心态。心里别慌&#xff0c;心里别慌&#xff0c;心里别慌。 第15题&#xff0c;howManyBits&#xff0c;返回用二进制补码形式表示x所需的最小二进制位数。比如howManyBits(12) 5&#xff0c;12可以被表…

初学vue3与ts:vue3选项式api获取当前路由地址

vue2的获取方法 this.$route.pathvue3选项式api获取方法 import { useRouter } from vue-router; const router useRouter(); console.log(router) console.log(router.currentRoute.value.path)

测开速成考点

用户登录界面需要做哪些测试&#xff1f; ⑴功能&#xff1a;  正确的用户名&#xff0c;正确的密码&#xff0c;点击提交按钮&#xff0c;验证能否正确登录 是否跳转正确页面。  错误的用户名 或 密码&#xff0c;点击提交&#xff0c;提示相应的错误信息。  记住用户名…

Word文件设置了只读模式,为什么还能编辑?

Word文档设置了只读模式&#xff0c;为什么还可以编辑呢&#xff1f;&#xff0c;不过当我们进行保存的时候会发现&#xff0c;word提示需要重命名并选择新路径才能够保存&#xff0c;是因为什么呢&#xff1f;今天我们学习一下如何解决问题。 这种操作&#xff0c;即使可以编辑…

Python-文件详解

一个计算机包括&#xff1a;CPU、存储器、输入设备、输出设备 存储器分为内存和硬盘 文件路径&#xff1a;一层一层文件目录组成的字符串 文件路径可以视为文件在硬盘中的身份标识&#xff0c;因为每一个文件的1路径唯一 文件之间使用/反斜杠和\正斜杠都一样 内存和硬盘的区别…

AI文本生成工具-免费AI文本生成软件

在当今数字时代&#xff0c;人工智能技术的快速发展不仅改变了我们的生活方式&#xff0c;还在创作领域崭露头角。其中&#xff0c;AI文本生成技术的迅猛发展引起了广泛关注。本文将深入探讨AI文本生成的方法、工具以及一些关键技巧&#xff0c;帮助读者更好地了解并利用这一前…

Run Micro-ROS on almost any stm32

Run Micro-ROS on almost any stm32 - Tech blog (guillaumebeuzeboc.github.io) Run Micro-ROS on almost any stm32 19 Sep 2021 c, cmake, stm32, micro-ros, clion 如果用的不是STM32F4&#xff0c;需要自己去生成micro_ros_stm32cubemx_utils库 Micro-ROS brings the…

你知道模拟养成游戏如何开发吗?

在游戏开发的世界中&#xff0c;模拟养成游戏一直以其引人入胜的玩法和独特的虚拟体验吸引着玩家的目光。从概念的孵化到最终的上线&#xff0c;模拟养成游戏的开发是一个富有挑战性又充满创意的过程。本文将带你深入了解这一过程&#xff0c;揭示模拟养成游戏背后的秘密&#…

UNIX 文件权限设置的相关函数

函数 umask umask 函数为进程设置文件模式创建屏蔽字&#xff0c;并返回之前的值。这个函数没有出错返回&#xff0c;它不会出错. #include <sys/stat.h> mode_t umask(mode_t cmask); // 返回值&#xff1a;为文件模式创建屏蔽字 其中&#xff0c;参数 cmask 是由 文…

qt 5.15.2 主窗体菜单工具栏树控件功能

qt 5.15.2 主窗体菜单工具栏树控件功能 显示主窗体效果&#xff1a; mainwindow.h文件内容&#xff1a; #ifndef MAINWINDOW_H #define MAINWINDOW_H#include <QMainWindow> #include <QFileDialog> #include <QString> #include <QMessageBox>#inc…