第3關 求陣列中的最大值和最小值

2022-06-28 05:48:09 字數 1560 閱讀 5203

任務描述

本關任務:有乙個包含10個元素的陣列,從鍵盤輸入n的值,及前n個元素的值,要求:程式設計實現尋找陣列中最小值和最大值。

注意:n的值為不超過10的正整數,否則輸出input error!

如:從鍵盤輸入n的值為10,各元素的值分別為31、94、55、83、67、72、29、12、88、56

則輸出最大值:94

最小值:12

如何求出最大值、最小值

求陣列的最大值,是不是很像打擂台呢?

對於一群人我們不知道誰最厲害,所以我們準備乙個擂台,並挑選第乙個人為擂主(max),擂台下的人不斷的(迴圈)來挑戰擂主,如果贏了那挑戰者就是擂主,之前的擂主就**了,直到沒有挑戰者了,那最後乙個擂主就是最厲害的那個了。

求陣列的最小值與求最大值類似。

程式設計要求

根據提示,在右側編輯器補充**,計算並輸出陣列的最小值和最大值。

測試說明

平台會對你編寫的**進行測試:

測試輸入:

5

4

91

51

2

32

預期輸出:

最大值:91

最小值:2

測試輸入:

6

5

1

151

12

22

100

預期輸出:

最大值:151

最小值:1

開始你的任務吧,祝你成功!

using system;

using system.collections.generic;

using system.linq;

using system.text;

using system.threading.tasks;

namespace ch705

int a = new int[n];

for (int i = 0; i < n; ++i)

int max = -1, min = 1000000;

for(int i = 0; i < n; ++ i)

console.writeline("最大值:", max);

console.writeline("最小值:", min);

}catch(exception e)

/*******end********/}}

}

求陣列中的最大值和最小值

方法1 暴力方法 遍歷一遍陣列,比較2 n次求出最大值和最小值 方法2 改進方法 破壞了原陣列 遍歷一遍陣列使得下標為偶數的元素較下標為奇數的元素大,再分別求出最大值和最小值 比較次數為3 n 2次 方法3 改進方法 不破壞原陣列 遍歷一遍陣列將相鄰元素中較大值和nmax比較,將較小值和nmin比較...

求陣列的最大值和最小值

求陣列的最大最小值,可以遍歷一遍陣列,然後分別記錄最大值和最小值,這種方法需要的比較次數為2n次。如果想要減少比較次數,可以採用的方法是遍歷陣列,然後比較相鄰元素,把相鄰元素的較大值放在後面,較小的放在前面。在從較大值中選取最大值即為整個陣列的最大值,從較小值中選取最小值即為整個陣列的最小值。這時,...

求陣列的最大值最小值

演算法陣列中的最大值和最小值 方法1 遍歷兩次求出最大值最小值 時間複雜度n 2 方法2 相鄰兩個數分為一組比較,大的放在偶數字,小的放到奇數字,然後在偶數字上找到最大值,在奇數字上找到最小值n 1.5 方法3 定義兩個變數max,min值,相鄰兩個數分為一組,比較出最大值和最小值,最大值和max比...