配列スペースが十分でない場合の対処方法
配列を定義するたびに、そのサイズを決定する必要があります。スペースが十分でない場合、それを解決するためにどのような解決策がありますか?
- 大きな配列を再作成してから、元のデータを1つずつ作成した新しい配列に移動します。新しい番号を追加するために、実行する操作の時間計算量が判明したため、これを行うのは面倒です。 O(n)になる
- 最初は、配列はスタック上に構築されて
int * a=(int * )malloc(3 * sizeof(* a));
いません。データが十分でない場合は、realloc()関数を直接呼び出すことができます。
int * temp=(int * )malloc(4*sizeof(*a))//还可以做一个判定操作,判定temp是否为空
free(a);//要释放之前创建的空间
temp =a ;
これにより、元の配列が4に拡張され
ます。3。動的リンクリストを使用します。
…