数据结构之两个线性表的合并
来源:互联网 发布:白无常电商美工教学 编辑:程序博客网 时间:2024/04/30 21:53
严蔚敏版的教材,算法2.2,下面是代码实现。。。。
#include <iostream>using namespace std;typedef int element;#define maxsize 100typedef struct{ element aa[maxsize]; int last;}sqlist;void mergelist(sqlist *la,sqlist *lb,sqlist *lc){ int i=0,j=0,k=0; while((i<=la->last)&&(j<=lb->last)) { if(la->aa[i]<=lb->aa[j]) { lc->aa[k]=la->aa[i];i++;k++; } else { lc->aa[k]=lb->aa[j];j++;k++; } } while(i<=la->last) { lc->aa[k]=la->aa[i]; i++; k++; } while(j<=lb->last) { lc->aa[k]=lb->aa[j];j++;k++; } lc->last=la->last+lb->last+1;}int main(){int len,i; sqlist *la,*lb,*lc; la=(sqlist*)malloc(sizeof(sqlist)); cout<<"输入链表a的长度:"<<endl; cin>>len; la->last=len-1; cout<<"输入元素"<<endl; for(i=0;i<len;++i) cin>>la->aa[i]; lb=(sqlist*)malloc(sizeof(sqlist)); cout<<"输入链表b的长度:"<<endl; cin>>len; lb->last=len-1; cout<<"输入元素"<<endl; for(i=0;i<len;++i) cin>>lb->aa[i]; lc=(sqlist*)malloc(sizeof(sqlist)); mergelist(la,lb,lc); for(i=0;i<=lc->last;++i) cout<<lc->aa[i]<<" "; cout<<endl; return 0;
}
- 数据结构之两个线性表的合并
- 数据结构之线性表的合并
- 数据结构之两个有序表的合并
- 两个线性表的合并
- 数据结构中线性表的基本操作-合并两个线性表-按照元素升序排列
- 线性表 之 集合的合并 (数据结构java语言版)
- 《数据结构之线性表合并操作》
- 数据结构(3):两个有序线性结构的合并
- 合并两个线性表
- 合并两个线性表
- 合并两个线性表
- 合并两个线性表
- 合并两个线性表的实现
- PAT数据结构_02-线性结构1 两个有序链表序列的合并 (15分)
- [数据结构]02-线性结构1 两个有序链表序列的合并
- 《数据结构》一般线性表的合并
- 将两个线性表合并
- 链表面试题之合并有序的两个线性表-递归和非递归的方法
- 数据库查询
- as3.0编程环境
- 动态添加/删除spinner菜单
- LINUX下PHP扩展模块的开发和测试(原创)
- Python 连接 Oracle
- 数据结构之两个线性表的合并
- 线性表的链式存储及相关操作 C语言版
- JMS : Java Message Service (Java消息服务)
- 分析谷歌收购摩托罗拉无线对移动产业带来的影响
- 动态改变 Label
- Suse linux 安装vw-tools
- Objective-C内存管理总结 iphone
- GVIM配置
- Java风格