快速查找数组中的某个元素,并返回下标
package b3;
import java.util.Arrays;
public class work1 {
public static void PX(int []array){
int tmp=0;
for(int i=0;i<array.length;i++){
for(int j=0;j<array.length-i-1;j++){
if(array[j]>array[j+1])
{tmp=array[j];
array[j]=array[j+1];
array[j+1]=tmp;
}
}
}
}
public static int CZ(int []array,int n){
int i;
for( i=0;i<array.length;i++){
if(array[i]==n){
return i;}
}
return 0;
}
public static void main(String[] args) {
int []a={9,5,8,6,7,3,87,2};
System.out.println("排序之后的数组");
PX(a);
for(int i=0;i<a.length;i++){
System.out.println(a[i]);}
int b=CZ(a,87);
System.out.println("查找的值下标为");
System.out.println(b);
// TODO Auto-generated method stub
}
}
输出结果
2.如何排序数组并插入某个元素
public class work2 {
public static void PX(int []array){
int tmp=0;
for(int i=0;i<array.length;i++){
for(int j=0;j<array.length-i-1;j++){
if(array[j]>array[j+1])
{tmp=array[j];
array[j]=array[j+1];
array[j+1]=tmp;
}
}
}
}
public static void show(int[]array){
for(int i=0;i<array.length;i++){
System.out.println(array[i]);
}
}
public static void main(String[] args) {
int[]a={5,6,8,7};
int t=10;//需要插入得数
int[]b=new int[a.length+1];
b[0]=10;
for(int i=1;i<b.length;i++){
b[i]=a[i-1];
}
System.out.println("原数组");
show(a);
System.out.println("新数组");
PX(b);
show(b);
// TODO Auto-generated method stub
}
}
结果
3.如何确定二维数组上限
这个暂时木有做
4.反转数组
public class work4 {
public static void show(int[]array){
for(int i=0;i<array.length;i++){
System.out.println(array[i]);
}
}
public static void main(String[] args) {
int[] a = {1,2,3,4,5};
int[] b = new int[a.length];
for (int i = 0; i < a.length; i++) {
b[a.length-i-1] = a[i];
}
show(b);
}
}
输出结果为 5 4 3 2 1
5,如何将字符串数组写入输出控制台
public class work5 {
public static void main(String[] args) {
// TODO Auto-generated method stub
String[] T = {"q","w","e","r"};
for (int i = 0; i < T.length; i++) {
System.out.print(T[i]+",");
}
System.out.println();
for (String string : T) {
System.out.print(string+",");
}
}
}
结果
q,w,e,r,
q,w,e,r,
6.如何搜索数组中最小值,最大值
public class work6 {
public static void main(String[] args) {
int[] a = {1,3,5,7,9,11};
int max=a[0],min=a[0];
for (int i = 0; i < a.length; i++) {
if(a[i]>max)
{
max = a[i];
}
if(a[i]<min)
{
min = a[i];
}
}
System.out.println("max="+max+" min="+min);
}
}
输出结果 max=11 min=1
7.如何合并两个数组
public class work7 {
public static void main(String[] args) {
int[] a = {1,2,3,4,5};
int[] b = {100,7,8,9,10};
int[] c = new int[a.length+b.length];
for (int i = 0; i < a.length; i++) {
c[i] = a[i];
}
for (int i = 0; i <b.length; i++) {
c[i+a.length] = b[i];
}
for(int i=0;i<c.length;i++){
System.out.println(c[i]);
}
// TODO Auto-generated method stub
}
}
结果为
1 2 3 4 5 100 7 8 9 10
8.如何填充数组
import java.util.Arrays;
public class work8 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] a = new int[8];
Arrays.fill(a, 8);//a指的是数组名,8指的是填充进去的数
System.out.println(Arrays.toString(a));
}
}
结果为
8 8 8 8 8 8 8 8