关闭

线性表的顺序存储

标签: 线性表
674人阅读 评论(0) 收藏 举报
分类:
#include <iostream>
#include <cstdio>
#include <cmath>
#include <cstring>
#include <algorithm>
#include <vector>
#include <queue>
#include <stdlib.h>
#include <string.h>
#include <iomanip>
#define N 500010
#define INF 10000000
#define LL long long
#define eps 10E-9
#define mem(a)  memset(a,0,sizeof(a))
#define w(a)   while(a)
#define s(a)   scanf("%d",&a)
#define ss(a,b)   scanf("%d%d",&a,&b)
#define sss(a,b,c)   scanf("%lld%lld%lld",&a,&b,&c)
#define MAXN 9999
#define MAXSIZE 10
#define DLEN 4
#define MAXN 9999
#define MAXSIZE 10
#define DLEN 4
using namespace std;
struct mylist//只一个结构体  和数组差不多。。
{
    int data[MAXN];//存数据
    int length;//数据个数
} node;
void myinsert(int pos, int cnt)
{
    for(int i = node.length ; i>=pos; i--)
    {
        node.data[i+1] = node.data[i];
    }
    node.data[pos]=cnt;
    node.length++;
    cout<<"success!"<<endl;
    for(int i=1; i<=node.length; i++)
    {
        cout<<node.data[i]<<" ";
    }
    cout<<endl;
}
void mydelete(int pos)
{
    for(int i=pos; i<node.length; i++)
    {
        node.data[i]=node.data[i+1];
    }
    node.length--;
    cout<<"success!"<<endl;
    for(int i=1; i<=node.length; i++)
    {
        cout<<node.data[i]<<" ";
    }
    cout<<endl;
}
void myquery(int pos)
{
    cout<<node.data[pos]<<endl;
}
int main()
{
    int num;
    printf("input the length of data\n");
    cin>>num;
    node.length=num;
    cout<<"input all the data"<<endl;
    for(int i=1; i<=num; i++)
    {
        cin>>node.data[i];
    }
    int pos, cnt;
    cout<<"input the postion and data of insert"<<endl;
    cin>>pos>>cnt;
    myinsert(pos, cnt);
    cout<<"input the  postion of the data you want to dalete"<<endl;
    cin>>pos;
    mydelete(pos);
    cout<<"input the  postion of the data you want to query"<<endl;
    cin>>pos;
    myquery(pos);
    return 0;
}

1
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:36171次
    • 积分:1133
    • 等级:
    • 排名:千里之外
    • 原创:74篇
    • 转载:5篇
    • 译文:0篇
    • 评论:9条
    最新评论