• 顺序表的A-A交B


    #include<iostream>
    #include<malloc.h>
    #include<string.h>
    #include<stdio.h>
    #define max 100
    using namespace std;
    typedef struct node
    {
    int data[max];
    int len;
    } seq;
    void init(seq *l)
    {
    l->len=0;
    }
    int empty(seq l)
    {
    if(l.len==0)
    {
    cout<<"线性表为空!";
    return 1;
    }
    else
    return 0;
    }
    int getelem(seq l,int i,int *e)
    {
    if(empty(l))
    {
    printf("线性表为空呢!");
    exit(-1);
    }
    int j=0;
    if(i<0||i>l.len)
    {printf("位置不合法");
    }
    *e=l.data[i-1];
    return 1;
    }
    int located(seq l,int e)
    {
    for(int i=0;i<l.len;i++)
    {
    if(e==l.data[i])
    return i;
    else
    return 0;
    }

    }

    int insert(seq *l,int i,int e)
    {
    if(i<1||i>l->len+1)
    {
    printf("位置不合法!");
    return 0;
    }
    else if(l->len >= max)
    {
    printf("数量错误,顺序表溢出!");
    return 1;
    }

    else
    {

    int j=0;

    for(j=l->len;j>=i;j--)
    {
    l->data[j]=l->data[j-1];
    }
    l->data[i-1]=e;

    l->len++;
    }
    return 1;
    }

    int del(seq *l,int i,int *e)
    {
    if(i<0||i>l->len)
    {
    printf("位置不合法! ");
    exit(-1);
    }
    else if(l->len<=0)
    {
    printf("顺序表已空");
    return 0;

    }
    else
    { *e=l->data[i-1];
    for(int j=i;j<=l->len;j++)
    {
    l->data[j]=l->data[j+1];
    }
    l->len--;
    }

    return 1;
    }

    int length(seq l)
    {
    return l.len;
    }

    int main()
    {
    int i,j,k;
    seq A,B;int e;
    init(&A);
    init(&B);
    for(int i=1;i<=10;i++)
    {
    insert (&A,i,i);

    }

    for(int i=1;i<=A.len-1;i++)
    {
    cout<<A.data[i]; cout<<" ";
    }
    cout<<endl;
    for(int j=0,i=1;j<20;i++,j=j+2)
    {
    insert(&B,i,j+1);
    }

    for(int i=1;i<=B.len-1;i++)
    {
    cout<<B.data[i]; cout<<" ";
    }
    cout<<endl;

    for(int j=0;j<=B.len;j++)
    {
    for(int i=0;i<=A.len;i++)
    {

    if(A.data[i]==B.data[j])
    {
    del(&A,i,&e);
    }
    }
    }
    for(int i=0;i<=A.len-1;i++)
    {
    cout<<A.data[i];cout<<" ";
    }

    return 0;
    }

  • 相关阅读:
    Python 向列表中添加元素
    [python] 查找列表中重复的元素
    Excel文件的读写
    Oracle EBS AP 取消付款
    Oracle EBS AP取消核销
    Oracle EBS AP 创建贷项通知单并核销到相应发票
    Oracle EBS AR 其他API
    Oracle EBS AR 冲销收款
    Oracle EBS 银行账户API
    Oracle EBS AR 客户API
  • 原文地址:https://www.cnblogs.com/mykonons/p/6555958.html
Copyright © 2020-2023  润新知