2010-12-11 82 views
2

我們如何獲得數組中的中間元素?如何獲得數組中的中間元素?

示例代碼:

string[] source = txtInput.Text.Split(','); 
int[] nums = new int[input.Length]; 
for (int i = 0; i < source.Length; i++) 
{ 
nums[i] = Convert.ToInt32(source[i]); 
} 

int first=nums[0]; 

int mid=///how is it? 

回答

9

像這樣:

int mid = nums[nums.Length/2]; 

你拿陣列(nums.Length),分大小兩個獲得中間索引和使用該索引。

+0

當涉及到不均勻的長度時要小心,這是一個定義問題,您將選擇採用哪個索引。 – Jannik 2016-06-14 05:12:41

3
int mid = nums[nums.Length/2]; 

因爲它是全部整數,所以如果長度是奇數,數字將被舍入。

1

中期= input.Lenght/2

0

由2 devided元素的總數目給出了中間元件:

int mid = nums[Convert.ToInt32(num.Count /2)]; 
+0

整數除法總是會產生一個整數 - 爲什麼使用Convert.ToInt32?這是多餘的 – Oded 2010-12-11 13:39:54

+0

好點,我很快輸入並沒有在現場意識到。確實Convert.ToInt32()是毫無意義的 – Bazzz 2010-12-12 16:37:55

1

獲取中間索引,然後在該中間索引

返回元素

int [] arr = {1,2,3,4,5,6,7}

int middIndex = arr.Length/2;

Console.WriteLine(arr [middIndex]);