数据结构——线性表的建立和有序输出
来源:互联网 发布:linux tcp发送窗口 编辑:程序博客网 时间:2024/06/07 21:30
建立空的线性表;
输入表中的元素;
在输入的过程中将输入的元素依次插入建立好的线性表中;
在插入的过程中排序;
输出已经排序好了的有序线性表;
#include<iostream>#include<stdlib.h># define LIST_INIT_SIZE 100# define LISTINCREMENT 10# define ElemType int# define OVERFLOW -1# define ERROR -1using namespace std;typedef struct { ElemType *elem; int length; int listsize;}SqList;void InitList_Sq(SqList &L){ L.elem = (ElemType * )malloc(LIST_INIT_SIZE*sizeof(ElemType)); if(! L.elem) exit(OVERFLOW); L.length = 0; L.listsize = LIST_INIT_SIZE;}int ListInsert_Sq(SqList &L, int i, ElemType e){ if(i > L.length) { cout << "ERROR"; return ERROR; } if(L.length >= L.listsize) { ElemType *newbase; newbase = (ElemType *)realloc(L.elem,(L.listsize + LISTINCREMENT) * sizeof(ElemType)); if(!newbase) exit(OVERFLOW); L.elem = newbase; L.listsize += LISTINCREMENT; } if(L.length == 0) { L.elem[0] = e; L.length++; return 1; } else { ElemType *p, *q; int wh; for(wh = 0; wh < L.length; wh++) { if( L.elem[wh] > e) break; } q = &L.elem[wh]; for( p = &(L.elem[L.length-1]); p >= q; p--) *(p+1) = *p; *q = e; L.length++; }}int main (){ SqList L; InitList_Sq(L); int e; int n; cout << "Please input n:" << endl; cin >> n; cout << "Please input elem:" << endl; for(int i = 0; i < n; i++) { cin >> e; ListInsert_Sq( L, i, e); } cout << "Output the SqList:" << endl; for(int i = 0; i < L.length; i++) cout << L.elem[i] << " "; cout << endl; free(L.elem); L.elem = NULL;}
0 0
- 数据结构——线性表的建立和有序输出
- 再回首,数据结构——有序线性表的合并
- 【数据结构】实验一:线性表的应用---成绩有序表的建立以及合并
- 寒假第二天--线性表-- 数据结构实验之链表六:有序链表的建立
- 大话数据结构—顺序表、有序表、线性索引查找
- 数据结构——有序单链表的建立、插入与删除
- 数据结构——有序线性表的的插入与删除
- 数据结构——单链表的创建、逆置、插入、有序表的建立、有序单链表合并等基础操作!!
- 数据结构有序表的创建与输出
- 数据结构——链表之有序链表的建立
- 【数据结构】-线性表-顺序表-1324: 算法2-2:有序线性表的有序合并
- 数据结构算法(一)--有序线性表的合并和交集
- 线性表和有序表的合并
- 数据结构——1 单链表建立、输出和测长
- 数据结构实验之链表六:有序链表的建立
- 数据结构实验之链表六:有序链表的建立
- 数据结构实验之链表六:有序链表的建立
- 数据结构实验之链表六:有序链表的建立
- 利用QueryPerformanceCounter可以测试CPU性能
- Nginx+Tomcat+Memcached负载均衡集群服务搭建
- linux Ubuntu的root权限开通
- Delphi的Randomize
- 急急急急急急急急急急就急急急急急急急急急急急急
- 数据结构——线性表的建立和有序输出
- 精确的时间计时--QueryPerformanceCounter
- java基础—10.网络编程TCP/UDP
- 【原创】工控机安装Ubuntu系统,直接断电然后再上电时,系统停留在启动项位置等待选择的处理方法
- Delphi 读写其他进程内存
- LaTeX 简介与安装
- Android内存泄露案例分析(内存分析工具DDMS和MAT工具)
- 修改HTTP Post/get数据利器TamperIE
- hdu-5429(大数java练习)