• 王道数据结构 (24) 顺序表的基本操作——插入


    在顺序表L的第i (1<=L.length+1)个位置插入新元素e。如果i的输入不合法,则返回false,表示插入失败;否则,将顺序表的第i个元素以及其后的元素右移一个位置,腾出一个空位置插入新元素e,顺序表长度增加1,插入成功,返回true。

     代码:

    bool ListInsert(SqList &L, int i, ElemType e){
        //本算法实现将元素e插入到顺序表L中第i个位置
        if ( i<1 || i>L.length+1 )
            return false;  // 判断i的范围是否有效
        if(L.length>=MaxSize)
            return false;  // 当前存储空间已满,不能插入
        for (int j =L.length; j >=i; j--)  // 将第i个位置及之后的元素后移
            L.data[j]=L.data[j-l];
        L.data[i-1]=e; //在位置i处放入e
        L.length++; //线性表长度加1
        return true;
    }

    如果i的输入不合法,则返回false,表示插入失败;

        if ( i<1 || i>L.length+1 )
            return false;  // 判断i的范围是否有效
        if(L.length>=MaxSize)
            return false;  // 当前存储空间已满,不能插入

    将顺序表的第i个元素以及其后的元素右移一个位置,腾出一个空位置插入新元素e,顺序表长度增加1,插入成功,返回true

      for (int j =L.length; j >=i; j--)  // 将第i个位置及之后的元素后移
            L.data[j]=L.data[j-l];
        L.data[i-1]=e; //在位置i处放入e
        L.length++; //线性表长度加1
        return true;

    时间复杂度:

    越努力越幸运
  • 相关阅读:
    DB2 字段操作
    解析二维码
    Eclipse tomcat 内存溢出
    hereim_美句_1
    js自定义函数默认参数的写法
    PHP和JS判断访问客户端的是PC还是移动设备
    lampp服务器配置httpd-vhosts.conf文件,设置多域名
    价值7000万的商业模式,羊毛出在狗身上,猪来买单
    确保 PHP 应用程序的安全
    美国淘金的故事
  • 原文地址:https://www.cnblogs.com/guangzhou11/p/13553753.html
Copyright © 2020-2023  润新知