中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

c語言怎么刪除數組中重復元素

小億
126
2024-03-01 17:12:21
欄目: 編程語言

刪除數組中重復元素的方法可以分為兩種:

  1. 使用額外的空間:
    • 創建一個新數組,遍歷原數組,將不重復的元素存入新數組。
    • 將新數組復制回原數組。
int removeDuplicates(int arr[], int n) {
    if (n == 0 || n == 1) {
        return n;
    }

    int temp[n];
    int j = 0;
    
    for (int i = 0; i < n - 1; i++) {
        if (arr[i] != arr[i + 1]) {
            temp[j++] = arr[i];
        }
    }

    temp[j++] = arr[n - 1];

    for (int i = 0; i < j; i++) {
        arr[i] = temp[i];
    }

    return j;
}
  1. 不使用額外的空間:
    • 使用兩個指針,一個指向當前元素,一個指向下一個不同的元素。
    • 遍歷原數組,如果當前元素和下一個元素不相同,則將下一個元素復制到當前元素的下一個位置。
int removeDuplicates(int arr[], int n) {
    if (n == 0 || n == 1) {
        return n;
    }

    int j = 0;

    for (int i = 0; i < n - 1; i++) {
        if (arr[i] != arr[i + 1]) {
            arr[j++] = arr[i];
        }
    }

    arr[j++] = arr[n - 1];

    return j;
}

這兩種方法都可以實現刪除數組中重復元素的功能,具體選擇哪種方法取決于具體情況和需求。

0
高州市| 长宁县| 江阴市| 施秉县| 鄂尔多斯市| 道真| 大同市| 麻阳| 长宁区| 祁东县| 孟连| 东台市| 兴义市| 晋州市| 瑞金市| 舟曲县| 佛学| SHOW| 高雄县| 瑞昌市| 桦甸市| 沁源县| 开鲁县| 清水县| 绥江县| 潍坊市| 长岭县| 漳浦县| 临江市| 师宗县| 全南县| 都安| 上饶县| 皋兰县| 宾川县| 克东县| 剑川县| 南和县| 泉州市| 新乡县| 长武县|