91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

自定義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

隆子县| 桐庐县| 巫溪县| 永州市| 谷城县| 无棣县| 壶关县| 长宁县| 白山市| 荔波县| 高清| 汝阳县| 来凤县| 松原市| 新邵县| 清涧县| 天峻县| 洞头县| 广丰县| 武穴市| 孝昌县| 南溪县| 曲沃县| 长治市| 枣强县| 霍州市| 运城市| 邢台县| 二手房| 高碑店市| 金寨县| 天台县| 新营市| 莒南县| 南靖县| 民勤县| 衡南县| 泗阳县| 若羌县| 太康县| 吉水县|