亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

自定義C++ Array類以支持高效插入與刪除

發布時間:2024-07-19 13:00:06 來源:億速云 閱讀:99 作者:小樊 欄目:編程語言

下面是一個自定義的C++ Array類,支持高效插入和刪除操作:

#include <iostream>

class Array {
private:
    int* data; // 數組指針
    int size; // 數組大小
    int capacity; // 數組容量

public:
    // 構造函數
    Array(int initialCapacity = 10) {
        data = new int[initialCapacity];
        size = 0;
        capacity = initialCapacity;
    }

    // 析構函數
    ~Array() {
        delete[] data;
    }

    // 插入元素
    void insert(int element, int index) {
        if (index < 0 || index > size) {
            std::cout << "Invalid index" << std::endl;
            return;
        }

        // 如果數組已滿,則擴容
        if (size == capacity) {
            int newCapacity = capacity * 2;
            int* newData = new int[newCapacity];
            for (int i = 0; i < size; i++) {
                newData[i] = data[i];
            }
            delete[] data;
            data = newData;
            capacity = newCapacity;
        }

        // 將元素插入到指定位置
        for (int i = size; i > index; i--) {
            data[i] = data[i-1];
        }
        data[index] = element;
        size++;
    }

    // 刪除元素
    void remove(int index) {
        if (index < 0 || index >= size) {
            std::cout << "Invalid index" << std::endl;
            return;
        }

        // 將指定位置后的元素向前移動
        for (int i = index; i < size - 1; i++) {
            data[i] = data[i+1];
        }
        size--;
    }

    // 輸出數組元素
    void print() {
        for (int i = 0; i < size; i++) {
            std::cout << data[i] << " ";
        }
        std::cout << std::endl;
    }
};

int main() {
    // 創建一個Array對象
    Array arr(5);

    // 插入元素
    arr.insert(1, 0);
    arr.insert(2, 1);
    arr.insert(3, 2);
    arr.insert(4, 3);

    // 輸出數組元素
    arr.print();

    // 刪除元素
    arr.remove(2);

    // 輸出數組元素
    arr.print();

    return 0;
}

這個自定義的Array類實現了插入和刪除操作,當數組滿時會自動擴容,保證了數組的動態性。通過這個類,可以高效地進行插入和刪除操作。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

c++
AI

衡南县| 米林县| 沅陵县| 教育| 尚义县| 怀安县| 兴安盟| 延寿县| 桐梓县| 内乡县| 银川市| 蒙城县| 得荣县| 明光市| 灵山县| 七台河市| 石屏县| 乌审旗| 广饶县| 灵宝市| 潮安县| 嵩明县| 额敏县| 彭水| 卓尼县| 视频| 富平县| 平江县| 新泰市| 瑞昌市| 上杭县| 柳河县| 额尔古纳市| 洛宁县| 霍州市| 岑巩县| 沾化县| 车险| 孝感市| 黔东| 康平县|