線性結構 陣列

2021-09-28 20:31:05 字數 1107 閱讀 5611

定於陣列最常用的兩種方法

int arr = new int[3];

int arr = new int;

我們會發現長度都是不可變的,如何解決這個問題呢?

如何給長度為3的飽和陣列中再新增乙個元素呢?? 仔細想想,我們可以這樣做

public static void main(string args) ;

system.out.println(arrays.tostring(arr));

int dst = 4;

//建立乙個新的陣列,長度是原陣列長度+1

int arr1 = new int[arr.length+1];

//把原陣列中的資料全部複製到新陣列中

for (int i = 0; i < arr.length; i++)

//把目標元素放入新陣列最後

arr1[3] = dst;

//新陣列替換原陣列

arr = arr1;

system.out.println(arrays.tostring(arr));

}

如何 刪除陣列中的元素呢?

public static void main(string args) ;

system.out.println(arrays.tostring(arr));

//要刪除元素的下標

int dst = 3;

//建立乙個新的陣列

int arr1 = new int[arr.length-1];

//複製原陣列中除了要刪除元素以外的所有元素

for (int i = 0; i < arr1.length ; i++) ;

int target = 9;

int left = 0;

int right = arr.length-1;

while (true) else if(arr[mid] < target) else

//若左邊元素下標已經大於等於右邊元素下標時還沒有跳出迴圈,說明找不到此元素

if(left >= right)

}}

線性結構0 陣列佇列

佇列是一種特殊的線性表,特殊之處在於它只允許在表的前端 front 進行刪除操作,而在表的後端 rear 進行插入操作,和棧一樣,佇列是一種操作受限制的線性表。進行插入操作的端稱為隊尾,進行刪除操作的端稱為隊頭。使用陣列模擬佇列,首先編寫乙個arrayqueue類class arrayqueue 新...

資料結構之線性陣列

傳入結構體變數的位址和動態陣列的長度,初始化結構體變數str,str的有效長度賦值為0,str的總長度賦值為len,str的base指向malloc動態分配的陣列 void init list struct student str,int len str cent 0 str length len ...

資料結構 線性結構 棧 佇列 陣列

棧和佇列是插入 刪除受限制 只能在表的一端插入 刪除,不能從中間插入 刪除 的線性表。它們的儲存結構,以及儲存結構下不同操作的屬性和普通線性表是一樣的。因為受限制,理解起來反而更簡單。棧 lifo last in first out 是後進先出的線性表,採用順序儲存時,稱順序棧 採用鏈式儲存時,稱鏈...