数据结构实践——顺序表应用(1)
2015-09-21 16:07
471 查看
/* * Copyright (c) 2015, 烟台大学计算机与控制工程学院 * All rights reserved. * 文件名称:main.cpp,list.cpp,list.h * 作者:唐子健 * 完成日期:2015年9月21日 * 版本号:vc++6.0 * #include <stdio.h> #include <malloc.h> #define MaxSize 50 typedef int ElemType; typedef struct { ElemType data[MaxSize]; int length; }SqList; void CreateList(SqList *&L,ElemType a[],int n); void DispList(SqList *L); void delx2y(SqList *&L, ElemType x, ElemType y);
<p>#include"list.h" void CreateList(SqList *&L,ElemType a[],int n) { int i; L=(SqList *)malloc(sizeof(SqList)); for(i=0;i<n;i++) L->data[i]=a[i]; L->length=n; } void DispList(SqList *L) { int i; for(i=0;i<L->length;i++) printf("%d ",L->data[i]); printf("\n"); } </p><p>//删除线性表中,元素值在x到y之间的元素 void delx2y(SqList *&L, ElemType x, ElemType y) { int k=0,i; //k记录非x的元素个数 ElemType t; if(x>y) { t=x; x=y; y=t; } for (i=0; i<L->length; i++) if (L->data[i]<x || L->data[i]>y ) //复制不在[x, y]之间的元素 { L->data[k]=L->data[i]; k++; } L->length=k; }</p><p>#include"list.h" int main() { SqList *sq; ElemType a[10]= {5,8,7,0,2,4,9,6,7,3}; CreateList(sq, a, 10); printf("删除前 "); DispList(sq);</p><p> delx2y(sq, 4, 7);</p><p> printf("删除后 "); DispList(sq); return 0; }</p><p>结果为:</p><p><img src="https://img-blog.csdn.net/20150921160853761?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" /></p>
相关文章推荐
- 数据结构之树
- PAT研究生入学考试2015.03第二题Deduplication on a Linked List (25) 题解
- 数据结构(C#)
- List的数据结构
- 学习数据结构的方法
- 常用数据结构-几种特殊的二叉树
- 能量所编程中常用的几个数据结构
- Linux下IP协议使用的地址描述数据结构结构的典型原型声明
- 数据结构-线性表链式表示
- 【数据结构之旅】循环队列
- java数据结构
- 从算法+数据结构到MVC
- 数据结构 线性结构中的链表
- 行编辑问题的实现
- 数据结构之---C语言实现栈的表达式求值(表达式树)
- 算法数据结构之贪心算法
- 算法库应用——删除元素在[x, y]之间的元素
- 数据结构学习---链表的若干操作
- 数据结构学习---链表的若干操作
- 研磨数据结构与算法-12遍历二叉树