数组的几种排序
查找 无序的
全部遍历
for(int i=0;i<数组名.length;i++){
if(数组名[i]==查找的值){
//输出
break;
}
}
有序 二分法 折半查找
int start=0;
int end=数组名.length-1;
int middle=(start+end)/2;
while(start!=end){
if(数组名[middle]==查找的值){
//输出 break;
}else{
if(数组名[middle]>查找的值){
end=middle-1;
middle=(start+end)/2;
}else{
start=middle+1;
middle=(start+end)/2;
}
}
}
排序
冒泡
for(int i=0;i<数组名.length-1;i++){
for(int j=0;j<数组名.length-1-i;j++){
if(数组名[j]>数组名[j+1]){
int temp=数组名[j];
数组名[j]=数组名[j+1];
数组名[j+1]=temp;
}
}
}
选择
for(int i=0;i<数组名.length-1;i++){
int min=数组名[i];
int index=i;
for(int j=0;i<数组名.length-1;j++)+{
if(数组名[j]<min){
min=数组名[j];
index=j;
}
}
数组名[index]=数组名[i];
数组名[i]=min;
}
java 中方法的参数传值问题 :方法参数的传递都是值传递
如果传递的是 基本类型 与String 那么传递的是副本
其他方法里面改变的是副本 不改变本方法里面的值
如果传递的是其他引用类型 传的是对象的引用 所有其他方法里面改变
的值会影响本方法里面的值