資料結構 向陣列中新增元素

2021-09-26 03:40:56 字數 1050 閱讀 8809

//size是陣列的第乙個空元素的定位符。

//向所有元素後新增乙個新元素

public void addlast(int e)

// data[size]=e;

// size++;

add(size,e);

} //在所有元素前新增乙個新元素

public void addfirst(int e)

//在第index個位置插入乙個新元素e

總結:首先,size指向的是陣列的第乙個位置,也就是索引為0的地方,先說向所有元素後新增乙個元素,按照addlast()方法,如果size的長度等於陣列的長度,則滿了,不能再新增了,丟擲個異常,反之,如上圖size指向了索引為4這個位置,則data[4]=e,size繼續指向5那個位置.

接著我們來說在第index個位置插入乙個新元素e,還是先判斷size和陣列長度的關係,其次判斷索引下標必須是大於0的,並且必須小於等於size,保證陣列的緊密排列,再來個for迴圈,讓插入位置後的所有元素都後移一位,然後size++,i=size-1表示的就是最後乙個元素,i>=index就是所插入位置的元素,data[i+1]就是size處也就是最後那個元素向後移動一位的位置,把data[i]也就是最後乙個元素的值賦值給data[i+1]也就是每個元素都向後移動一位,直到將data[index]的值往後移動一位騰出乙個空間放你所要插入的那個元素e,因為多了乙個元素所以size++往後移動一位.如上圖,size就指向了索引為5的位置了。而向所有元素前或後新增元素就直接呼叫add()方法就可以了,size就是所有元素後的那個位置,0就是最開始的位置,呼叫方法讓其他元素向後移即可.這就是我在學習中的心得體會.

js向陣列裡新增元素

js中對於陣列的操作很常見,下面記錄一下js向陣列新增元素的方法。let myarray 11,22,33 console.log 原陣列 myarray myarray.push 44,55 console.log 用push在陣列後面插入元素 myarray myarray.unshift 66...

C 中如何向陣列中動態新增元素

背景 現需要向陣列中迴圈插入字串,但c 中的陣列是不支援動態新增元素的,只能建立固定大小的陣列,該如何解決呢?1.string陣列轉list string string strarray new string 也可string strarray list strlist new list strar...

向陣列追加元素

向陣列追加元素的方法與陣列複製非常類似。最簡單的追加到陣列的方法是將陣列複製語句進行擴充套件。hobbies for hobby in do echo hobby hobby done hobby swimming hobby water skiing hobby canoeing hobby wh...