数据结构与算法编程题15
设计一个算法,通过遍历一趟,将链表中所有结点的链接方向逆转,仍利用原表的存储空间。
#include <iostream>
using namespace std;typedef int Elemtype;
#define ERROR 0;
#define OK 1;typedef struct LNode
{Elemtype data; //结点保存的数据struct LNode* next; //结构体指针
}LNode, * LinkList;/*单链表初始化*/
bool Init_LinkList(LinkList& L)
{L = (LinkList)malloc(sizeof(LNode)); //新建头结点if (L == NULL){return ERROR;}L->data = 0;L->next = NULL;return OK;
}/*单链表头插法*/
bool LinkList_head_instert(LinkList& L)
{int x = 0;LNode* p = NULL;while (cin >> x){p = (LinkList)malloc(sizeof(LNode));if (p != NULL) //防止分配地址失败{p->data = x;p->next = L->next;L->next = p;if (cin.get() == '\n') break; //检测换行符}else{exit(0);cout << "内存分配失败" << endl;}}return OK;
}/*单链表尾插法*/
bool LinkList_tail_instert(LinkList& L)
{int x = 0;LNode* p = NULL;LNode* r = NULL;r = L;while (cin >> x){p = (LinkList)malloc(sizeof(LNode));if (p != NULL) //防止分配地址失败{p->data = x;p->next = NULL;r->next = p;r = p;if (cin.get() == '\n') break; //检测换行符}else{exit(0);cout << "内存分配失败" << endl;}}return OK;
}/*单链表遍历*/
bool LinkList_All_value(LinkList L)
{if (L->next == NULL){cout << "链表为空" << endl;return ERROR;}LNode* s = NULL;s = L->next;while (s != NULL){cout << s->data << " ";s = s->next;}cout << endl;free(s);return OK;
}/*单链表长度*/
int LinkList_length(LinkList L)
{int count = 0;LNode* s = NULL;s = L->next;while (s != NULL){count++;s = s->next;}return count;
}/*清空单链表*/
void Clear_LinkList(LinkList& L)
{LNode* p = L->next;LNode* q = NULL;while (p != NULL){q = p->next;free(p);p = q;}L->next = NULL;
}/*销毁单链表*/
void Destory_LinkList(LinkList& L)
{LNode* p = NULL;LNode* q = NULL;p = L;while (p != NULL){q = p->next;free(p);p = q;}L = NULL;
}
//--------------------------------------核心代码--------------------------------------//
bool reverse(LinkList& A) //头插法
{LNode* pa = NULL;LNode* q = NULL;pa = A->next;A->next = NULL;if (pa == NULL){cout << "单链表数据为空!!!" << endl;return ERROR;}while (pa != NULL){q = pa->next;pa->next = A->next;A->next = pa;pa = q;}return OK;
}//--------------------------------------核心代码--------------------------------------//
//设计一个算法,通过遍历一趟,将链表中所有结点的链接方向逆转,仍利用原表的存储空间。int main(void)
{LinkList A = NULL;Init_LinkList(A);LinkList_tail_instert(A);//test1: 1 2 3 100 5 6 8LinkList_All_value(A);reverse(A);//逆转单链表LinkList_All_value(A);return 0;
}

相关文章:
数据结构与算法编程题15
设计一个算法,通过遍历一趟,将链表中所有结点的链接方向逆转,仍利用原表的存储空间。 #include <iostream> using namespace std;typedef int Elemtype; #define ERROR 0; #define OK 1;typedef struct LNode {Elemtype data; …...
基于Mapmost Alpha工具快速搭建3D场景可视化大屏
🤵♂️ 个人主页:艾派森的个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞Ǵ…...
OpenAI再次与Sam Altman谈判;ChatGPT Voice正式上线
11月22日,金融时报消息,OpenAI迫于超过700名员工联名信的压力,再次启动了与Sam Altman的谈判,希望他回归董事会。 在Sam确定加入微软后,OpenAI超700名员工签署了一封联名信,要求Sam和Greg Brockman&#x…...
技术是增长关键驱动!传音控股新专利亮相,看未来手机趋势
近日,有媒体报道从国家知识产权局发现传音控股取得多项突破性的技术专利,包括图像处理技术、准共址关系指示、panel状态处理等。当下的智能手机行业,已进入高度成熟阶段,技术是产业新一轮增长点已成为业内共识。 传音控股认为&am…...
C# - Opencv应用(2) 之矩阵Mat使用[矩阵创建、图像显示、像素读取与赋值]
C# - Opencv应用(2) 之矩阵Mat使用[矩阵创建、图像显示、像素读取与赋值] 矩阵创建图像显示与保存像素读取与赋值新建sample02项目,配置opencv4相关包,新建.cs进行测试 1.矩阵创建 //创建空白矩阵 var dst new Mat()//创建并赋…...
执行npm的时候报权限问题的解决方案
我们在执行npm操作的过程中,会出现以下权限问题,解决方案: 管理员身份 运行cmd 切换目录到要执行命令的文件下 再进行npm操作即可...
【实用】PPT没几页内存很大怎么解决
PPT页数很少但导出内存很大解决方法 1.打开ppt点击左上角 “文件”—“选项” 2.对话框选择 “常规与保存” (1)如果想要文件特别小时可 取消勾选 “将字体嵌入文件” (2)文件大小适中 可选择第一个选项 “仅最入文档中所用的字…...
【Docker】从零开始:8.Docker命令:Commit提交命令
【Docker】从零开始:8.Docker命令:Commit命令 基本概念镜像镜像分层什么是镜像分层为什么 Docker 镜像要采用这种分层结构 本章要点commit 命令命令格式docker commit 操作参数实例演示1.下载一个新的ubuntu镜像2.运行容器3.查看并安装vim4.退出容器5提交自己的镜像…...
【深度学习】神经网络术语:Epoch、Batch Size和迭代
batchsize:中文翻译为批大小(批尺寸)。 简单点说,批量大小将决定我们一次训练的样本数目。 batch_size将影响到模型的优化程度和速度。 为什么需要有 Batch_Size : batchsize 的正确选择是为了在内存效率和内存容量之间寻找最…...
谈谈你对mvc和mvvm的理解
MVC和MVVM是软件开发中两种常见的架构模式,各自有不同的优缺点。 MVC(Model-View-Controller)是一种经典的架构模式,将应用程序分为三个部分:模型(Model)、视图(View)和…...
C语言每日一题(35)有效的括号
力扣网 20 有效的括号 题目描述 给定一个只包括 (,),{,},[,] 的字符串 s ,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。每个右…...
【DevOps】Git 图文详解(七):标签管理
Git 图文详解(七):标签管理 标签(Tags)指的是某个分支某个特定时间点的状态,是对某一个提交记录的 固定 “指针” 引用。一经创建,不可移动,存储在工作区根目录下 .git\refs\tags。可…...
BootStrap【表格二、基础表单、被支持的控件、表单状态】(二)-全面详解(学习总结---从入门到深化)
目录 表格二 表单_基础表单 表单_被支持的控件 表单_表单状态 表格二 紧缩表格 通过添加 .table-condensed 类可以让表格更加紧凑,单元格中的内补(padding)均会减半 <table class"table table-condensed table-bordered"…...
亿赛通电子文档安全管理系统UploadFileFromClientServiceForClient接口存在任意文件上传漏洞 附POC
@[toc] 免责声明:请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的一切不良后果与文章作者无关。该文章仅供学习用途使用。 1. 亿赛通电子文档安全管理系统接口简介 微信…...
SPSS系统聚类
前言: 本专栏参考教材为《SPSS22.0从入门到精通》,由于软件版本原因,部分内容有所改变,为适应软件版本的变化,特此创作此专栏便于大家学习。本专栏使用软件为:SPSS25.0 本专栏所有的数据文件请点击此链接下…...
【ArcGIS Pro微课1000例】0033:ArcGIS Pro处理cad数据(格式转换、投影变换)
文章目录 一、cad dwg转shp1. 导出为shp2. cad至地理数据库3. data interoperability tools二、shp投影变换一、cad dwg转shp 1. 导出为shp 加载cad数据,显示如下: 选择需要导出的数据,如面状,右键→数据→导出要素: 导出要素参数如下,点击确定。 导出的要素不带空间参…...
【小呆的力学笔记】有限元专题之循环对称结构有限元原理
文章目录 1. 循环对称问题的提出2. 循环对称条件2.1 节点位移的循环对称关系2.2 节点内力的循环对称关系 3. 在平衡方程中引入循环对称条件 1. 循环对称问题的提出 许多工程结构都是其中某一扇面的n次周向重复,也就是是周期循环对称结构。如果弹性体的几何形状、约…...
云端导览,数字互动 | 拓世法宝AI数字人一体机助力全新旅游时代
《中国旅行消费趋势洞察白皮书(2023版)》显示,消费者旅行习惯已从“到此一游”变为“深度在地”,更强调在旅游中充实自我、学习新知识。 (《中国旅行消费趋势洞察白皮书(2023版》截图) 从这些资…...
PTA-快速幂
要求实现一个递归函数,高效求ab(1≤a,b≤62,ab<263)。 函数接口定义: long long int pow(int a, int b); 其中a 、b 是用户传入的参数。 裁判测试程序样例: #include<iostream> using namespace std; long long int pow(int a,…...
【深度学习】Transformer简介
近年来,Transformer模型在自然语言处理(NLP)领域中横扫千军,以BERT、GPT为代表的模型屡屡屠榜,目前已经成为了该领域的标准模型。同时,在计算机视觉等领域中,Transformer模型也逐渐得到了重视&a…...
Sunshine游戏串流终极指南:如何打造你的个人云游戏服务器
Sunshine游戏串流终极指南:如何打造你的个人云游戏服务器 【免费下载链接】Sunshine Self-hosted game stream host for Moonlight. 项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine Sunshine是一个强大的自托管游戏串流服务器解决方案ÿ…...
技术赎罪券交易:软件测试从业者的专业实践与未来展望
在软件开发的复杂生态中,每一行代码都可能潜藏缺陷——这些“代码原罪”源于人为失误、需求漂移或技术债务积累。2026年,全球因代码错误导致的系统崩溃事件年增长率高达15%,尤其在金融和医疗领域,后果往往是灾难性的。作为软件测试…...
不止于分配IP:用Ubuntu DHCP服务器玩转Option 43和IPv6,搞定特殊设备自动发现
不止于分配IP:用Ubuntu DHCP服务器玩转Option 43和IPv6,搞定特殊设备自动发现 当你以为DHCP只是用来分配IP地址的工具时,其实它隐藏着更多可能性。想象一下这样的场景:新接入网络的无线控制器能够自动获取配置参数,IPv…...
从物理到代码:用Cesium Cartesian3向量,手把手教你理解三维空间中的‘力’与‘运动’
从物理到代码:用Cesium Cartesian3向量,手把手教你理解三维空间中的‘力’与‘运动’ 在三维图形编程中,向量运算就像物理世界中的"语言翻译器",将我们熟悉的力学概念转化为计算机能理解的数学表达。想象一下࿰…...
凭什么推荐大家使用湖南肯瑟的导热硅脂系列产品
为什么要选择肯瑟T408导热硅脂:想要高效散热又兼顾成本?肯瑟T408导热硅脂是你的绝佳选择!它拥有高导热率、低热阻、长效稳定的卓越性能,导热率达8W/mK,热阻仅0.02℃in/W,挥发率<0.5%。对比汉高&…...
避坑指南:在Synopsys ICC中搞定Floorplan与Power Network Synthesis (PNS) 的实战心得
避坑指南:在Synopsys ICC中搞定Floorplan与Power Network Synthesis (PNS) 的实战心得 在数字芯片设计的物理实现阶段,Floorplan(布局规划)和Power Network Synthesis(电源网络综合)的质量往往决定了整个项…...
为什么你的SSD用久了会变慢?深入浅出聊聊TLC/QLC闪存的Vt分布挑战
为什么你的SSD用久了会变慢?深入解析TLC/QLC闪存的电压分布困局 当你发现新买的固态硬盘(SSD)在连续使用几个月后,拷贝大文件时速度从500MB/s跌到300MB/s,游戏加载时间明显变长,这很可能不是心理作用。这种…...
Oracle 12c R2连接报错ORA-28040?别急着重装客户端,试试这个sqlnet.ora配置
Oracle 12c R2连接报错ORA-28040的精准解决方案 当数据库从Oracle 12c R1升级到R2后,许多运维团队都会遇到一个棘手问题:原本运行良好的老程序突然无法连接,报错"ORA-28040: 没有匹配的验证协议"。这个看似简单的错误背后ÿ…...
GodSVG元素属性系统详解:掌握每个SVG标签的完整配置
GodSVG元素属性系统详解:掌握每个SVG标签的完整配置 【免费下载链接】GodSVG A vector graphics application for structured SVG editing, available on all major desktop platforms and on web. Currently in late alpha. 项目地址: https://gitcode.com/gh_mi…...
InferLLM:轻量级大模型推理引擎,打通端侧AI部署最后一公里
1. 项目概述:从推理框架到端侧AI的“最后一公里”最近在折腾端侧AI模型部署的朋友,估计都绕不开一个核心痛点:如何把一个动辄几GB、甚至几十GB的大模型,塞进我们手边那些算力有限、内存捉襟见肘的设备里,比如手机、嵌入…...
