数据结构_1:线性表: C语言练习题
来源:互联网 发布:443端口入侵教程 编辑:程序博客网 时间:2024/06/03 06:33
- 顺序表删除最小元素,返回被删元素的值,空出来的位置由最后一个一个元素填补。
bool Del_min(SqList *L, ElemType *value){ if(L->length==0) return ERROR; value=L.data[0]; int pos=0; //假定零号最小 for(int i=1;i<L.length;i++) //循环寻找最小值 if()}
- 逆置顺序表的所有元素
//对于元素L.data[i] (i属于[0,L.length/2]),将其与L.data[L.lenghth-i-1]交换void Reverse(SqList *L){ ElemType temp; for(i=0;i<L.length/2;i++) { temp=L.data[i]; L.data[i]=L.data[L.length-i-1]; L.data[L.length-i-1]=temp; }}
- 删除线性表中所有值为x的数据元素
//A1: 用k基类L中不等于x的元素个数,边扫描,边统计k,并将不等于x的元素向前放置k个位置,最后修改k的值void del_x_1(SqList *L,ElemType x){ int k=0; for(int i=0;i<L.length;i++) if(L.data[i]!=x) { L.data[k]=L.data[i]; k++; } L.length=k;}//A2:
- 删除有序表中所有重复元素
bool Del_Same(SqList *L){ if(L.length==0) return false; int i,j; //i存储第一个不相同的元素,j是工作指针 for(i=0,j=1;j<L.length;j++) if(L.data[i]<L.data[j]) //找到后元素后移 L.data[++i]=L.data[j]; L.length=i+1;}
- 两个有序表合成一个有序表
bool Merge(SqList A,SqList B, SqList *C){ if(A.length+B.length>c.maxsize) return false; int i=0,j=0,k=0; while(i<A.length && j<B.length) { if(A.data[i]<=B.data[j]) C.data[k++]=A.data[i++] else C.data[k++]=B.data[j++]; } while (i<A.length) C.data[k++]=A.data[i++]; while (j<B.length) C.data[k++]=B.data[j++]; C.length=k; return false;}
- 线性表互换 ,数组A[M+N]中有两个线性表(a1,..am)和(b1,…bm);写一个函数将两个表互换,即将(b1,…bn)放到(a1,..am)的前面
typedef int DatatType;void Reverse(DataType A[],int left,int right,int arraysize){ if(left>=right || right>=arraySize) return; int mid>=(left+right)/2; for(int i=0;i<=mid-left;i++) { DataType temp=A[left+i]; A[left+i]=A[right-i]; A[right-i]=temp; }}void Exchange(DataType A[],int m,int n, int arraySize){ Reverse(A,0,m+n-1,arraysize); Reverse(A,0,n-1,arraysize); Reverse(A,n,m+n-1,arraysize);}
- 查找顺序表的值为x的元素
void SearchExchangeInsert(ElemType A[],ElemType x){ int low=0,high=n-1; while(low<=high) { mid=(low+high)/2; if(A[mid]==x) break; else if(A[mid]<x) low=mid+1; else high=mid-1; }if(A[mid]==x && mid!=n-1){ t=A[mid]; A[mid]=A[mid+1]; A[mid+1]=t;}if(low>high){ for(i=n-1;i>high;i--) A[i+1]=A[i]; A[i+1]=x;}}
1 0
- 数据结构_1:线性表: C语言练习题
- 数据结构_1:线性表: C语言实现
- 数据结构_1:线性表: C++
- 数据结构_1:线性表: Vector
- 线性表数据结构C语言实现
- C语言数据结构--(线性表一)
- C语言数据结构之线性表
- C语言数据结构之线性表
- C语言数据结构之线性表(续)
- 【数据结构】C语言线性表操作
- 【C语言 数据结构】 简单线性表实现
- C语言实现数据结构--线性表
- C语言数据结构-线性表-数组
- C语言数据结构-线性表-单链表
- C语言数据结构-线性表-双链表实现
- 数据结构(C语言)线性表 -单链表
- C语言数据结构——线性表
- 数据结构啊----线性表的练习题
- 离线+dp 51Nod1020 逆序排列
- 通過VS2012,C++,openCV,使抓到的深度圖及人體骨架圖顯示出三維坐標?(根据原创作者小斤陈改编)
- 当html图片叠加时,产生缝隙的解决办法
- swift 枚举(笔记)
- 认真学spring官网,很容易找到spring4的jar包下载位置
- 数据结构_1:线性表: C语言练习题
- Apache隐藏服务器信息开启gzip压缩
- 选择太多也是一种痛苦
- 记录自己的Json反序列化问题
- javascript之"==="和"=="以及单引号和双引号分析。
- Spring+javamail+velocity发送邮件
- 深入理解Java中为什么内部类可以访问外部类的成员
- How to create a library for Android Application
- A*变种——Jump Point Search分析