public class min { public static void main(String args[]){ int[] a = new int[]{9,8,7,6,5,4,3,2,1}; int minNum = a[0]; //默认第一个元素是最小值 for(int i=1;i<a.length;i++) { if(minNum>a[i]) { minNum=a[i];//如果最小值大于后边的元素,就从新赋值 } } System.out.println("最小值为:"+minNum); } }
public static void main(String args[]){ int[] a ={29,1,9,8,55,33,5,4,3,20,11}; Arrays.sort(a); System.out.println("最小值为:"+a[0]); }
public static void main(String args[]){
int[] a = new int[]{9,8,7,6,5,4,3,2,1};
int minNum = a[0]; //默认第一个元素是最小值
for(int i=1;i<a.length;i++)
{
if(minNum>a[i])
{
minNum=a[i];//如果最小值大于后边的元素,就从新赋值
}
}
System.out.println("最小值为:"+minNum);
}
}
public static void main(String args[]){
int[] a ={29,1,9,8,55,33,5,4,3,20,11};
Arrays.sort(a);
System.out.println("最小值为:"+a[0]);
}
int[] intArray = {8, 2, 1, 6, 7, 9, 4, 1};
int min = intArray[0];
for(int i : intArray){
if(i < min)
min = i;
}
System.out.println(min);
}
排序的话Arrays,用Arrays.sort()
容器啥的,用Collections.sort()
刚注意lz的代码……
return放while里……一进入while程序就结束了……
不只是while结束,整个程序都结束了
while(j!=a.length){
if(a[i]>a[j]&&i<a.length&&j<a.length){
i=j;
j++;
}else if(a[i]<a[j]&&i<a.length&&j<a.length){
j++;
}
}
System.out.println(a[i]);楼主可以试试这个代码。
public static void main(String[] args) {
int[] a = new int[] { 9, 8, 7, 6, 5, 4, 3, 2, 1 };
int i = 0, j = 1;
while (i < a.length && j < a.length) {
if (a[i] < a[j])
j++;
else if (a[i] > a[j]) {
i = j;
j++;
}
}
System.out.println(a[i]);
}在优化改改那看上去就变下面这样,就连一点像的地方都没有了…… public static void main(String[] args) {
int[] a = new int[] { 9, 8, 7, 6, 5, 4, 3, 2, 1 };
int i = 0, j = 1;
while (i < a.length && j < a.length) {
if (a[i] > a[j])
i = j;
j++;
}
System.out.println(a[i]);
}
int[] a = new int[] { 9, 8, 7, 6, 5, 4, 3, 2, 1 };
int i = 0, j = 1;
while (i < a.length && j < a.length) {
if (a[i] < a[j]) {
j++;
while (i < a.length && j < a.length && a[i] > a[j]) {
i = j;
j++;
} } else if (a[i] > a[j]) {
i = j;
j++;
while (i < a.length && j < a.length && a[i] < a[j]) {
j++;
} }
}
System.out.println(a[i]);
}hmmm,重来了一次,这样还是基本按照lz的思路去做的……