开发者社区> 问答> 正文

数据结构 顺序表中插入和删除元素的算法、顺序栈中入栈和出栈的算法

看清楚是算法, 拜托了各位财富值就剩这么点了 很着急用的 谢谢

展开
收起
知与谁同 2018-07-22 20:20:51 2362 0
1 条回答
写回答
取消 提交回答
  • //顺序表的插入
    void Insert(int i, int item)
    {
    if (length >= MaxSize)
    {
    cerr << "上溢";
    exit(1);
    }
    if (i<1 || i>length + 1)
    {
    cerr << "插入位置非法";
    exit(1);
    }
    for (int j = length; j >= i - 1; j--)
    data[j + 1] = data[j];
    data[i - 1] = item;
    length++;
    }
    //顺序表的删除
    int Delete(int i)
    {
    if (length == 0)
    {
    cerr << "下溢";
    exit(1);
    }
    if (i<1 || i>length)
    {
    cerr << "删除位置非法";
    exit(1);
    }
    int x = data[i - 1];
    for (int j = i; j < length; j++)
    data[j - 1] = data[j];
    length--;
    return x;
    }
    //入栈操作
    void Push(T x)
    {
    if (top == MaxSize - 1)
    {
    cerr << "上溢";
    exit(1);
    }
    top++;
    data[top] = x;
    }
    //出栈操作
    int Pop()
    {
    if (top == -1)
    {
    cerr << "下溢";
    exit(1);
    }
    int x = data[top--];
    return x;
    }
    2019-07-17 22:53:25
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
【云栖精选7月刊】抛开晦涩的算法、模型,让我们来谈谈互联网架构 立即下载
聚星台—客户运营核心大数据 与算法技术 立即下载
Apache Flink 流式应用中状态的数据结构定义升级 立即下载