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

作 业

#include <stdio.h>
#include <malloc.h
typedef struct LinkNode{
char data;
struct LinkNode *next;
} LNode, *LinkList, *NodePtr;
LinkList initLinkList(){
NodePtr tempHeader = (NodePtr)malloc(sizeof(LNode));//分配空间
tempHeader->data = '\0';
tempHeader->next = NULL;
return tempHeader;
}

//打印数据
void printList(NodePtr paraHeader){
NodePtr p = paraHeader->next;//指向首元结点
while (p != NULL) {
printf("%c", p->data);
p = p->next;
}
}

//打印数据和地址
void printListMemory(NodePtr paraHeader){
NodePtr p = paraHeader;
while (p != NULL) {
printf("At address %ld, data = %c, next = %ld \r\n", p, p->data, p->next);
p = p->next;
}// Of while
printf("\r\n");
}

//尾插法
void appendElement(NodePtr paraHeader, char paraChar){
NodePtr p, q;

// 创建节点
q = (NodePtr)malloc(sizeof(LNode));
q->data = paraChar;
q->next = NULL;

// 查询尾节点
p = paraHeader;
while (p->next != NULL) {
p = p->next;
}

// 添加尾节点
p->next = q;
}

//插入新元素
void insertElement(NodePtr paraHeader, char paraChar, int paraPosition){
NodePtr p, q;

// 查询位置
p = paraHeader;
for (int i = 0; i < paraPosition; i ++) {
p = p->next;
if (p == NULL) {
printf("The position %d is beyond the scope of the list.", paraPosition);
return;
}

// 创建新节点
q = (NodePtr)malloc(sizeof(LNode));
q->data = paraChar
printf("linking\r\n");//反馈当前程序正在进行链接的状态
q->next = p->next;
p->next = q;
}

//删除
void deleteElement(NodePtr paraHeader, char paraChar){
NodePtr p, q;
p = paraHeader;

//查找前驱
while ((p->next != NULL) && (p->next->data != paraChar)){
p = p->next;
}

//没有的情况

if (p->next == NULL) {
printf("Cannot delete %c\r\n", paraChar);
return;
}

q = p->next;//保存目标地址
p->next = p->next->next;
free(q);//释放空间
}


http://www.cnnetsun.cn/news/2105828.html

相关文章:

  • PyTorch实现多目标多元线性回归模型教程
  • 瑞萨DA14592双核BLE芯片架构与低功耗设计解析
  • hyperf 创建型(单例、工厂、建造者、原型)
  • 用100道题拿下你的算法面试(字符串篇-8):回文子串数目
  • 3步部署DamaiHelper抢票神器:多平台自动化抢票终极指南
  • Python在TVA算法架构优化中的创新应用(九)
  • Docker运行AI模型必踩的3个安全雷区:从容器逃逸到模型窃取的全链路防护指南
  • 永磁同步电机参数辨识与状态估计:扩展卡尔曼滤波(EKF)在RLS性能不足条件下的深度应用研究
  • 2025届学术党必备的降AI率助手实际效果
  • 如何将 Jupyter Notebook (.ipynb) 文件转换为 Python (.py) 文件
  • 【央行金科局内部通报引用】:MCP 2026配置偏差导致审计否决率飙升42%——你的配置还停留在2023版吗?
  • 如何快速掌握微信自动化:新手到高手的终极指南
  • 深入理解Android系统开发:SDK方向工程师的全面指南
  • 远程开发环境冷启动从47s到≤3s,全链路优化实战,含Docker Compose缓存策略、devcontainer.json深度配置与GPU直通配置
  • LlamaIndex.TS停更启示:从RAG框架设计看LLM应用数据层演进
  • 5分钟掌握B站视频永久保存技巧:m4s-converter完整使用指南
  • 2026年TOP10 AIGC检测工具汇总,终于找到可以免费查AI率的了!
  • 怎样高效部署ClearerVoice-Studio:专业级AI语音处理工具包全面指南
  • 一站式解决方案:Ledger 官方授权店详细购买与服务全指南
  • LinkSwift:跨平台网盘直链解析引擎的技术架构与配置指南
  • 校园小情书微信小程序源码 _ 社区小程序前后端开源 _ 校园表白墙交友小程序
  • 重构仿真工作流:从手动操作到智能自动化的范式革命
  • 5分钟掌握WebToEpub:将网页小说转为电子书的终极解决方案
  • 桌面后端开发本地服务与系统集成
  • HTTPS-加密变迁-对称-非对称-中间人攻击-证书全流程
  • 千问3.5-2B助力STM32开发:嵌入式系统代码注释与文档生成
  • Claude Code 工程化配置指南:从代码助手到超级队友的进化
  • SQL CREATE DATABASE
  • Fan Control完整教程:3步实现Windows风扇智能控制
  • AI大模型开始“接管测试”:文本、语音、视觉,谁才是效率杀手锏?