言語の配列に重複したエントリのソートを削除cは

代わりに定期的な要素を削除する要求の主題は、このプログラムを活用します。

「実際のソートされた配列」と整数の番号を設定し、即ち、比較することにより、重複がソートされた配列を使用して、元の配列、現在のフラグ数S上に直接アレイを注文していません。元の配列であるので、アレイは数が内部に配置されるべきかどうかを決定するために必要なデジタルアラインメントによってソートされた後に順序付けられたアレイを順次最後の数字と比較することができます。

「1」は数字の最初の配列の実際の分類である[1,1,2]例として、最初のデフォルト数は、2番目の数字は「1」で、数値の最後、すなわち、現在のソートされた配列に等しいです繰り返しの数は、配列がソートされて入力することはできません。次の数字「2」は、配列が最後の番号「1」大きいよりもソートされ、それは入力することができ、プラスの場合、すなわち、ソートされた配列の長さを増加させる、Sを聞かせ。

すべての数字の最後の完了後のでアレイの組み合わされた長さを得るために、Sがソートされ、決定されます。コードは以下の通りであります:

int removeDuplicates(int* nums, int numsSize){
    int i,s=0;
    if(numsSize<2) return numsSize;
    for(i=1;i<numsSize;i++)
    {
        if(nums[s]<nums[i])
        {
            s++;
            nums[s]=nums[i];
        }
    }
    return s+1;
}

ヒープバッファオーバーフロー:AddressSanitizer:コードを書くプロセスでは、あなたが最初のものよりもnameSizeの大きなを決定する必要があり、LeetCode誤りがあるだろう 、アドレスに、それは不可能に実行すること参照ここ

リリース7件のオリジナルの記事 ウォンの賞賛0 ビュー141

おすすめ

転載: blog.csdn.net/qq_44183026/article/details/104618570