数据结构——单链表-删除操作

2023-10-27

#include<stdio.h>
#include <malloc.h>

typedef struct LNode{
	int data;
	struct LNode *next;
}LNode, *LinkList;

void creatL(LinkList &L,int a[],int n){
	LNode *r;
	LNode *p;
	L = (LinkList)malloc(sizeof(LNode));
	L->next = NULL;
	r = L;
	for(int i =0;i<n;i++){
		p = (LinkList) malloc(sizeof(LNode));
		p->next = NULL; 
		p->data = a[i];
		r->next = p;
		r = p;
	}
}

//单链表删除算法
bool ListDelete_L(LinkList L, int pos, int &e)
{
	LNode *p = L;int k = 0; 
	while(p->next&&k<pos-1){
		p = p->next;
		k++;
	}
	if(!p->next||k>pos-1)
		return false;
	LNode *s = p->next;
	p->next = p->next->next;
	e = s->data;
	free(s);
	return true;
}
int main(){
	LNode *L;
	int a[5] = {1,3,5,7,9};
	int e;int pos;
	creatL(L,a,5);
	LNode *read;
	read = L->next;
	while(read){
		printf("%d ",read->data);
		read = read->next;
	}
	printf("\n请输出删除元素的位置:");
	scanf("%d",&pos); 
	if(ListDelete_L(L,pos,e))
		printf("删除成功:%d\n",e);
	else
		printf("删除失败\n"); 
	read = L->next;
	while(read){
		printf("%d ",read->data);
		read = read->next;
	}
	return 0;
} 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

数据结构——单链表-删除操作 的相关文章

  • java语言的运算符

    目录 小白的疑惑 大白话运算符概念 运算符概念 运算符分类 特别注意 代码定天下 二元运算符 关系运算符代码 逻辑运算符 位运算符 拓展运算符 三目运算符 小白的疑惑 很多没接触编程的小伙伴都会顿感疑惑 啥是运算符 大白话运算符概念 小学算
  • VSCode 下载缓慢或者下载失败解决方案

    最近发现在VSCode官网上下载vscode十分缓慢 甚至经常断网或者是直接导致下载失败 我们可以使用国内镜像 让下载飞起来 附图 从官网上下载网速极其缓慢 我们将链接复制下来 黑框 https az764295 vo msecnd net
  • 版本发布流程

    文章目录 一 版本发布流程 1 增加 变更功能流程 1 需求确认 2 产品开发 3 alpha测试 4 问题修复 5 beta测试 6 版本发布 2 问题修复流程 1 问题确认 2 问题修复 3 alpha测试 4 版本发布 二 CHANG

随机推荐

  • 每天一个---- 吉尔德定律和迈特卡尔定律

    吉尔德定律 即主干网带宽的增长速度至少是运算性能增长速度的三倍 因为运算性能增长速度主要是由摩尔定律决定的 所以根据每18个月运算性能提高一倍计算 主干网的网络带宽的增长速度大概是每6个月增长一倍 而主干网的网络带宽的不断增长意味着各种新的
  • centos安装nc

    yum install y nc
  • el-button按下后背景颜色不恢复

    绑定的点击事件 const One click using evt gt let target evt target if target nodeName SPAN target evt target parentNode target b
  • 什么是MES系统?本文解释得很清楚了

    MES 英文Manufacturing Execution System的缩写 即生产执行系统 是近几年发展起来的企业信息化系统 目前在发达国家已经普遍推广 MES软件是介于ERP 企业资源计划系统 和自控系统 DCS PLC等 之间的系统
  • Android APK反编译技巧全讲解

    导言 在我们安卓开发当中 我们不仅需要掌握基础的开发技能 也需要掌握软件的安全技能 这样才可以让我们的软件能够成为一款能够真正可以进行发布的软件 同时也可以让自己的核心技术不会被别人所盗取 首先我们应当了解的是 对于反编译我们一共需要三个工
  • 《英雄联盟》丢失d3dcompiler_47.dll怎么办,推荐这个修复方案

    不知道大家有么有遇到过 在打开 英雄联盟 的时候 计算机提示丢失d3dcompiler 47 dll 无法继续执行此代码 d3dcompiler 47 dll是一个动态链接库文件 它是与Direct3D编译器相关的组件之一 像是photos
  • HTML <tt> 标签

    HTML5 中不支持
  • 也谈SDH、MSTP、OTN、PTN的区别和联系

    首先要说的是TDM的概念 TDM就是时分复用 就是将一个标准时长 1秒 分成若干段小的时间段 8000 每一个小时间段 1 8000 125us 传输一路信号 SDH系统的电路调度均以TDM为基础 所以看到很多人说SDH业务就是TDM业务
  • 求解全排列与幂集

    全排列 include
  • Hexo+GitHub搭建个人博客,实现云端编辑、一键发文

    操作环境 Windows10 Node Git ssh 前置准备
  • 最新八股文面试题

    Java面向对象有哪些特征 如何应用 面向对象编程是利用类和对象编程的一种思想 万物可归类 类是对于世界事物的高度抽象 不同的事物之间有不同的关系 一个类自身与外界的封装关系 一个父类和子类的继承关系 一个类和多个类的多态关系 万物皆对象
  • 探究Softmax的替代品:exp(x)的偶次泰勒展开式总是正的

    PaperWeekly 原创 作者 苏剑林 单位 追一科技 研究方向 NLP 神经网络 刚看到一个有意思的结论 对于任意实数 x 及偶数 n 总有
  • 通过PIL判断一张图片是不是灰度图

    灰度图有一个通道 可以理解为一个像素点用1个8bits数据表示 1个8bits表示范围是0 255 彩色图有三个通道 一个像素点用3个8bits数据表示 三个0 255的数字 def check gray image img path fr
  • B树的原理及代码实现、B+树和B*树介绍及应用

    目录 一 B树介绍 一 B树存在意义 二 B树的规则 二 B树实现原理及代码 一 实现原理 二 代码 三 B 树 一 概念 二 应用 MyISAM InnoDB 四 B 树 一 B树介绍 一 B树存在意义 B树主要用于磁盘文件的检索操作 众
  • 数字IC验证学习(一)

    一 数据类型 1 logic logic类型只能有一个驱动 使用wire和reg的地方均可使用logic 但如双向总线等有多个驱动的地方 则不可使用logic 2 二值逻辑 对于二值逻辑变量与DUT中的四值逻辑变量连接时 如果DUT中产生了
  • win10连接网络共享打印机出现没有当前打印机所需要的驱动

    这里的前提条件时你服务端的打印机已经设置共享 这里针对的是客户端连接已经共享的打印机 而且打印机版本比较老旧 无法正常连接 打开控制面板 选择 硬件和声音 选择 设备和打印机 选择 添加打印机 界面如图 选择 我所需要的打印机未列出 选择
  • chatgpt赋能python:Python错误自动重新执行

    Python错误自动重新执行 Python是一种强大的编程语言 它已经被广泛地应用于各个领域 在编写Python代码时 我们时常会遇到一些错误 有些错误是难以避免的 这篇文章将介绍如何让你的Python代码在遇到错误时自动重新执行 以确保程
  • Java高级编程【类与对象】

    Java语言的基本元素 类和对象 一 面向对象的思想概述 类 Class 和对象 Object 是面向对象的核心概念 类是对一类事物的描述 是抽象的 概念上的定义 对象是实际存在的该类事物的每个个体 因而也称为实例 instance 万事万
  • 吴恩达深度学习课程笔记(二):Logistic逻辑回归中损失函数(Loss Function)和成本函数(Cost Function)证明及推导

    偷个懒先上传图片吧 有需要再写文档吧 初衷只是给自己以后回顾 也希望能够帮助需要的人 吴恩达的深度学习课程看下来 目前给我的感受是大佬是真的关注我们这些底子差的人 已经讲到非常详细和细致了 连导数都讲解了还有函数的推到说明 建议像我一样学习
  • 数据结构——单链表-删除操作

    include