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

溫馨提示×

溫馨提示×

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

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

[LeetCode]27. Remove Element

發布時間:2020-06-25 00:29:30 來源:網絡 閱讀:331 作者:風子余 欄目:編程語言

27. Remove Element

Given an array and a value, remove all instances of that value in place and return the new length.

Do not allocate extra space for another array, you must do this in place with constant memory.

The order of elements can be changed. It doesn't matter what you leave beyond the new length.

Example:
Given input array nums = [3,2,2,3]val = 3

Your function should return length = 2, with the first two elements of nums being 2.


題意:

根據給定一個數組和一個關鍵值,刪除數組所有與關鍵值一樣的元素,并返回新的數組長度。


解題:

逐一遍歷數組元素,逐個比較,進行操作。

1)如果數組中元素值一致時,只需要將數組長度減一;否則,把cnt中下標元素賦值給index的位置。因為如果中間出現給定值時,覆蓋掉該位置值。


int removeElement(int* nums, int numsSize, int val)
{
    int cnt   = 0;
    int size  = numsSize;
    int index = 0;
    for ( cnt = 0; cnt < numsSize; cnt++ )
    {
        if ( *(nums + cnt) != val )                                               {
            *(nums + index) = *(nums + cnt);
            index++;
        }
        else
        {
            size -= 1;
        }
    }
    
    if ( index != numsSize )
    {   
        *(nums + index) = '\0';
    }
    
    return size;
}


向AI問一下細節

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

AI

介休市| 洛阳市| 武功县| 永胜县| 公安县| 依安县| 湄潭县| 柳州市| 红安县| 合肥市| 鱼台县| 启东市| 浮山县| 行唐县| 大邑县| 旌德县| 承德市| 保靖县| 拜泉县| 肇庆市| 鸡东县| 宁化县| 庆安县| 林州市| 浦江县| 敦化市| 郓城县| 柘荣县| 肥西县| 高雄市| 凌云县| 邓州市| 大埔区| 韶关市| 香港| 皮山县| 巴青县| 阳谷县| 忻州市| 灵川县| 梨树县|