zoukankan      html  css  js  c++  java
  • [置顶] 数据结构之 顺序表的实现与操作

    #include<stdio.h>
    #define maxSize 100 
    
    typedef struct 
    {
    	int data[maxSize];
    	int length;
    }Sqlist;
    void initSqlist(Sqlist &L)
    {
    	L.length=0;
    }
    void ListInsert(Sqlist &L,int locate,int x)
    {
    	if(L.length==maxSize||locate<0||locate>L.length+1)
    		return;
    	//把locate和后面的往后移动
    	for(int i=L.length;i>locate;i--)
    		L.data[i+1]=L.data[i];
    	L.data[locate]=x;
    	L.length+=1;
    }
    void ListDel(Sqlist &L,int locate,int &e)
    {
    	if(locate<1||locate>L.length+1)
    		return;
    	e=L.data[locate];
    	for(int i=locate;i<L.length;i++)
    		L.data[i]=L.data[i+1];
    	--(L.length);
    }
    void merge(Sqlist LA,Sqlist LB,Sqlist &LC)
    {
    	int pa,pb;
    	int i=0,j=0,k=0;
    	initSqlist(LC);
    	while(i<LA.length&&j<LB.length)
    	{
    		pa=LA.data[i];
    		pb=LB.data[j];
    		if(pa<=pb)
    		{
    			ListInsert(LC,k,pa);
    			i++;
    		}
    		else
    		{
    			ListInsert(LC,k,pb);
    			j++;
    		}
    		k++;
    	}
    	while(i<LA.length)
    	{
    		pa=LA.data[i];
    		ListInsert(LC,k,pa);
    		i++;
    		k++;
    	}
    	while(j<LB.length)
    	{
    		pb=LB.data[j];
    		ListInsert(LC,k,pb);
    		j++;
    		k++;
    	}
    }
    void show(Sqlist L)
    {
    	for(int i=0;i<L.length;i++)
    	{
    		printf("%d ",L.data[i]);
    	}
    
    }
    
    int main()
    {
    	int temp,len;
    	Sqlist LA,LB,LC;
    	initSqlist(LA);
    	initSqlist(LB);
    	initSqlist(LC);
    	scanf("%d",&len);
    	for(int i=0;i<len;i++)
    	{
    		scanf("%d",&temp);
    		ListInsert(LA,i,temp);
    	}
    
    	scanf("%d",&len);
    	for(int i=0;i<len;i++)
    	{
    		scanf("%d",&temp);
    		ListInsert(LB,i,temp);
    	}
    	merge(LA,LB,LC);
    	show(LC);
    }
    
    


     

    实现了顺序表的 插入 删除 和合并
  • 相关阅读:
    Linq to DataTable 左连接
    关于值类型和引用类型
    静态页生成
    技术是什么?
    关于GC垃圾回收的原理
    ADO.NET编程之美----数据访问方式(面向连接与面向无连接)
    Unity3d连接SQL Server数据库出现SocketException: 使用了与请求的协议不兼容的地址错误
    JAVA/GUI程序之记事本
    面试常见题
    unsafe
  • 原文地址:https://www.cnblogs.com/zhujunxxxxx/p/3344871.html
Copyright © 2011-2022 走看看