单链表由好多个结点构成 其中头节点可有可无 可以用来存放链表长度。
头指针必须有 每一个指针指向 下一个结点的数据域 头指针指向头结点 头结点中还有一个指针变量


指针域是一个结点类型的指针

#include<iostream>
using namespace std;
typedef int ElementType;
typedef int status;
typedef struct node {ElementType data;node* next;//node->next->date ai+1;
}node;
typedef node* linklist;
//单链表的读取
status getelem(linklist l, int i, ElementType* e)
{int j;linklist p;p = l->next;j = 1;while (p && j < i){p = p->next;++j;}if (!p || j > i){return -1;}*e = p->data;return 0;
}
//单链表的插入
status listinsert(linklist l, int i,ElementType e)
{int j;linklist p, s;p = l->next;j = 1;while (p&&j < i){p = p->next;j++;}if (!p || j >= i){return -1;}s = (linklist)malloc(sizeof(node));s->data = e;s->next = p->next;p->next = s;//颠倒会覆盖 造成死循环
}
status listdelete(linklist l, int i, ElementType *e)
{int j;linklist p, q;p = l->next;j = 1;while (p->next&&j < i){p = p->next;j++;}if (!p->next || j >= i){return -1;}//p->next = p->next->next;q = p->next;p->next = q->next;*e = q->data;free(q);
}


对于插入和删除数据越频繁的操作 ,单链表较顺序存储结构效率越有优势相关推荐

  1. java连接Orcale数据库并查询、插入、删除数据

    java连接Orcale数据库并查询.插入.删除数据 oci和thin是Oracle提供的两套Java访问Oracle数据库方式. thin是一种瘦客户端的连接方式 oci是一种胖客户端的连接方式 J ...

  2. 需要分配较大空间,插入和删除不需要移动元素的线性表,其存储结构是 。 A 单链表 B 静态链表 C 线性链表 D 顺序存储结构

    1.需要分配较大空间,插入和删除不需要移动元素的线性表,其存储结构是 . A 单链表 B 静态链表 C 线性链表 D 顺序存储结构 答案:B 2.静态链表中指针表示的是() A 内存地址 B下一元素地 ...

  3. mysql将查到的数据删除_MySQL基本SQL语句之数据插入、删除数据和更新数据 | 旺旺知识库...

    一.INSERT插入数据: 方法一:批量插入 基本语法: INSERT INTO tb_name (col1, col2, ...) VALUES (val1, val2, ...)[,(val1, ...

  4. c 更新mysql数据_MySQL插入更新删除数据

    数据插入 插入完整的行 INSERT INTO customers VALUES(NULL, 'Pep E. LaPew', '100 Main Street', 'Los Angeles', 'CA ...

  5. 栈和队列的插入、删除、获取头尾元素操作

    栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作.进行数据插入和删除操作的一端称为栈顶,另一端称为栈底.栈又称为后进先出的线性表. Stack.h #pragma once#inclu ...

  6. xlwings删除数据_xlwings最全操作;10秒搞定Xlwings全套操作

    import xlwings as xw app = xw.App(visible=True, add_book=False) app.display_alerts = False # 关闭一些提示信 ...

  7. seqlist插入java_大话数据结构(五)(java程序)——顺序存储结构的插入与删除...

    获得元素操作 对于线性表的顺序存储结构来说,我们要实现getElement操作,即将线性表的第i个位置元素返回即可 插入操作 插入算法思路: 1.如果插入位置不合理,抛出异常 2.如果插入表的长度大于 ...

  8. 单链表插入元素 注释 c语言,数据结构之无头单链表的相关练习题——C语言实现(详细注释)...

    本文中所用到的相关链表操作实现均在我上篇博客中:https://blog..net/haoziai905/article/details/87099287 1.删除无头单链表的非尾结点 这道题的重点就 ...

  9. c语言单链表删除倒数第k个数,在单链表中删除倒数第k个节点

    实现方式很多,在这里只说两种实现方式.看不懂时候,大家可以画画图,对理解为什么很有帮助. 第一种方式: 1.首先判断K值和链表是否为空,如果k<=0,或链表为空,直接返回head: 2.满足上面 ...

最新文章

  1. 聚类分析简单介绍(附R对应函数介绍)
  2. 【LeetCode从零单排】No.8 String to Integer (丧心病狂的一道题)
  3. m4a录音文件损坏修复_电脑录音软件哪个好?分享这款录音软件,供你参考!
  4. Eclipse用户使用IntelliJ IDEA的常见问答
  5. mysql的索引介绍_2
  6. 数字电影打包内容(Packaging)
  7. 在Intel处理器上,修改mitigations参数使Linux系统运行得更快
  8. oracle查询相同想,返回相同总和的查询-Oracle SQL
  9. Python库:Pyinstaller库、pip工具、pip指定安装源和版本
  10. 学以致用------韩顺平老师说(如果不能学以致用,那就是白费。等于没学。贪多嚼不烂。)---无内容...
  11. 三点确定一个圆的计算方法
  12. 使用IE缓存提取微博相片
  13. 用户体验的要素pdf_用户运营思路(35份)
  14. CSS盒子模型、浮动+例子分析
  15. Python基础之文件操作
  16. Linux命令——timeout
  17. ORB-SLAM2学习笔记——BundleAdjustment函数
  18. 北汽极狐ARCFOX与华为合作
  19. Pygame实现小球躲避
  20. 在这个“未来工厂”里, 人类仅凭脑电波控制机器

热门文章

  1. PyTorch 训练加速
  2. Python 3.6 安装 Shapely
  3. Unknown CMake command add_compile_definitions
  4. python twisted安装
  5. tensorflow tf.py_func
  6. Using AVStream.codec.time_base as a timebase hint to the muxer is deprecated
  7. Swing实现全屏(覆盖任务栏和不覆盖任务栏)
  8. mysql des_mysql中DES加密解密
  9. linux 权限管理 lvm,Linux系统中RAID及LVM管理
  10. 矩阵迹的性质_“拨开迷雾”,如何判定矩阵相似?