1、求两线性表LA与LB分别表示两个集合,求A = A U B

void union(Linear_lsit LA, Linear_lsit LB){n = ListLength(LA); //LA的表长for(i =1; i <= ListLength(LB); i++){x = GetNode(LB, i);//取LB中第i个值赋给xif(LocateNode(LA, x) == 0){InsertList(LA, ++n, x);}}
}

2、删除线性表L中重复的原素


void purge(linear_List L)
{i = 1;while (i < ListLenght(L)){x = GetNode(L, i);j = i + 1;while (j <= ListLength(L)){y = GetNode(L, j);if (x == = y){DeleteList(L, j);}else{j++;}}i++;}

3、在一个顺序表中找到最大值与最小值,及其所在的位置

void MaxMin(SeqList L, DataType * max, DataType * min, int *k, int *j){int i;*max = L.data[0];*min = L.data[0];*k = *j = 1; // 假设第一个即使最大值也是最小值for (i = 1; L.length; i++){if (L.data[i] > *max){*max = L.data[i];*k = i;}else if (L.data[i] < *min){*min = L.data[i];*j = i;}}}

4、将一个头节点指针为a的带头结点的单链表A分解成两个单链表A和B,其中头节点指针分别为a和b,使得A链表中含有远链表A中序号为奇数的元素,而B链表中含有原链表中序号为偶数的元素,并保持原来的相对顺序

void split(LinkList a, LinkList b){ListNode *p, *r, *s;p = a->next;r = a;s = break;while (p != NULL){r->next = p;r = p;p = p->next;if (p){s->next = p;s = p;p = p->next;}}r->next = s->next = NULL;}

5、已有一个节点数据域为整型的,且按大到小顺序排列的头节点指针为L的非空单循环链表,试写一个算法插入一个结点(其数据域为x)至循环表的适当位置使之保持链表的有序性

void InsertList(LinkList L, int x){ListNode *s, *p, *q;s = (ListNode *)malloc(sizeof(ListNode));s->data = x;p = L;q = p->next;while (q->data > x && q != L){p = p->next;q = p->next;}p->next = s;s->next = q;}

数据结构案例 C语言版相关推荐

  1. 资料分享:送你一本《数据结构(C语言版)》电子书!

    要想写出可复用.可扩展.易维护.灵活性好的代码,「数据结构」这一关必须要过啊! 在数据结构与算法的众多教材中,奉为经典的当属清华大学严蔚敏老师的著作.很多学校也选择这本书作为考研指定教材. 正在学习数 ...

  2. 资料分享:送你一本《数据结构(C#语言版)》电子书!

    对于信息类专业的学生而言,数据结构与算法是一门必修的课程.只有学好这门课程,熟练掌握线性表.栈.队列.树.图等基本结构,以及在这些结构上的各种算法,才能利用计算机去解决实际问题. 如何学好这门课程呢, ...

  3. 数据结构(C语言版) 第 八 章 排序 知识梳理 + 习题详解

    目录 一.归并排序 二.交换排序 1.快速排序 2.冒泡排序 三.插入排序 1.直接插入排序(基于顺序查找) 2.折半插入排序(基于折半查找) 3.希尔排序(基于逐趟缩小增量) 四.选择排序 0.直接 ...

  4. 数据结构(C语言版) 第 六 章 图 知识梳理 + 习题详解

    目录 一. 图的基本定义和术语 一.图的基本概念 1.度 2.连通 (1)连通图 (2)强连通/强连通图 3.回路 4.完全图 二.图的三种存储结构 1.邻接矩阵表示法 2.邻接表(链式)表示法 3. ...

  5. 数据结构(C语言版) 第 三 章 栈与队列 知识梳理 + 作业习题详解

    目录 一.栈 0.栈的基本概念 1.栈的实现 2.栈与递归 3.Hanoi塔问题 二.队列 0.队列的基本概念 1.队列的实现 2.循环队列 2.1循环队列的相关条件和公式: 3.链队列 4.链队列完 ...

  6. 数据结构(C语言版) 第二章 线性表 知识梳理+作业习题详解

    目录 一.线性表顺序存储结构(顺序表) 0.线性表的基本概念 1.样例引入:多项式相加 二.线性表链式存储结构(链表) 0.链表的基本概念 1.前插法代码实例 2.链表尾插法完整代码附带各种操作 三. ...

  7. 严蔚敏版《数据结构 (C语言版)》和《数据结构题集》(一)

    这里用的是严蔚敏版<数据结构 (C语言版)>和<数据结构题集>,深感自己的代码写得又渣又无力,打算把这本书好好琢磨透彻,里面的算法和模板都实现一遍,题目也都做一遍.最终能够做到 ...

  8. 数据结构(C语言版 第2版)课后习题答案 严蔚敏 等 编著

    数据结构(C语言版 第2版)课后习题答案 严蔚敏 等 编著,仅供参考,还是自己认真做了再看 第1章  绪论 5.选择题 (1)在数据结构中,从逻辑上可以把数据结构分成(  C ). A.动态结构和静态 ...

  9. 《数据结构(C语言版)》严巍敏课件~第二章:线性表

    <数据结构(C语言版)>严巍敏课件-第二章:线性表

最新文章

  1. 金融学名词M0, M1, M2, M3, M4, M5, M6
  2. win10玩cf不能全屏_游戏莫名卡顿四招搞定!Win10游戏优化教程
  3. python 类调用不存在的方法_[python] 类常用的内置方法
  4. (z) 什么是好的硬件工程师
  5. php与mysql连接程序_PHP与Mysql连接
  6. 【转】ABP源码分析四十六:ABP ZERO中的Ldap模块
  7. QT TextEdit设置背景、明文加密、弹出网站、弹出自定义对话框、gif动态图片、程序启动动画、打包程序、关闭事件
  8. 在angular的自定义回调中操作$scope
  9. mysql基础-基本的命令行操作
  10. android cardview,安卓 CardView 妙用
  11. 【渝粤教育】电大中专中药调剂作业 题库
  12. AIOT:基于智能家居谈AIOT
  13. 坑了程序员的政府项目是什么样的?
  14. CV领域论文查找方法
  15. 谷露专访伯周咨询创始人Tiger Pan:在退潮后蜕变
  16. 香港虚拟主机和美国虚拟主机的区别体现在哪些方面
  17. BugKu -- AWD --S1排位赛-4
  18. android stdudio OpenCV NDK 开发环境搭建 之找查条形码
  19. 跳转微信功能(学习总结)
  20. Adobe XMP SDK项目应用(续2)

热门文章

  1. CAD快速看图怎么转换成PDF格式?这一款软件就足够
  2. go程序设计语言第十二章-反射
  3. 中国土壤数据库及其分省处理数据集
  4. windows远程连接服务器,出现身份验证错误,给函数提供的身份无效!
  5. 服务器pci数据捕获和信号处理 感叹号,PCI数据捕获和信号处理控制器出现黄色感叹号 win10 系统?...
  6. linux 烧片文件生成,在Linux上烧录CD
  7. Web性能压力测试工具webbench用法
  8. 2006国际GUI冠军赛最佳易用性视觉风格金奖获得者许士彦(Ricky Xu)专访
  9. node.js后端及Vue前端跨域解决方案
  10. 管理者不可不知的5个管理常识,说的有道理