现在的位置: 首页 > 综合 > 正文

JAVA数组的应用(插入数字仍保持有序)

2018年04月06日 ⁄ 综合 ⁄ 共 2265字 ⁄ 字号 评论关闭

JAVA中的数组是比较常见的。以下列出一些经典的题型。

1、求1!+2!+。。。。。+20!的和

public class jiechenhe
{   public static void main(String arg[]){
	     double sum=1;
		 double max=0;
         for(double i=1;i<=20;i++){
			 sum*=i; //每一项循环乘积
			 max+=sum;  //乘完以后各项相加。
			 }
	System.out.println("the number is:"+ max);
}
}

2、经典的冒泡排序方法。

public class paixu
{
	public static void main(String[] args){
	int a[]={32,32,45,252,35234,42365,34,54,};
	       for(int i=1;i<a.length;i++)
		{
			   for (int j=0;j<a.length;j++)       //冒泡排序的核心思想,就是选取中介来交换值。
			   {
				   if(a[i]<a[j])
				   {
					   int k=a[i];
					   a[i]=a[j];
					      a[j]=k;
						  }
			   }
		}
System.out.print("the result is: ");
for(int i=0;i<a.length;i++)
		{
	System.out.print(a[i]+" ");
		}
	}
}

3、字母金字塔。在键盘输入一个字母按照由小到大来输出.

public class xinhao
{ public static void main(String args[]) 
	{                                                           	
 		char l[]=args[0].toCharArray();                        //比如输入的是C则会输出 A
	     char i=l[0];                                                                     ABA
		 int k=((int)i-(int)'A'+1);                                                  ABCBA
			for (int b=0;b<=k;b++)         //行数的循环
		{       
				for(int a=1;a<=k-b;a++){       //前半段的循环
			System.out.print(" ");}
		       for(int c=1;c<=2*b-1;c++){      //后半段的循环
				   char o='A';
			System.out.print(o);
			}			
			System.out.println();
		}
		}
}

4、去掉数组中的某些字段。

public class demo6
{
	public static void main(String[] args){
	int oldArr[]={1,3,4,5,0,0,6,6,0,5,4,7,6,7,0,5};
	int newArr[]=new int[20];
	System.out.print("结果是:");
	for(int i=0,j=0;i<oldArr.length;i++)
		{
		    if(oldArr[i]!=0)      //判断数组中的值是否为0;
			{     
				newArr[j]=oldArr[i];     //写进新的数组当中去。
				j++;
			   }
		}
		for(int j=0;j<newArr.length;j++)
		{
			if(newArr[j]!=0){
			System.out.print(newArr[j]+" ");}  //打印新的数组。
		}
	}
}

5、字符串匹配。

class getnumber
{
	private String string;
	public getnumber(String string){
		this.setstring(string);
		}
		public String getstring(){
			return string;
			}
			public void setstring(String s){
			string=s;
			}
			public void number(){
				int n=0;
				int o=0;
			   char a[]=string.toCharArray();     //把字符串转换为字符数组。
			for(int i=0;i<a.length;i++)
				{   if(a[i]=='n')
					{   
			            n++;
						}
						if(a[i]=='o')       //分别统计对象中的n,o的值得个数
					{     
							o++;
					}
			
		      	}
				System.out.println("the n number is:"+n+"\n"+"the o number is:"+o);
			
			}


}
public class demo5_3
{
	public static void main(String[] args){
	getnumber get=new getnumber("want you to know one thing");
	get.number();	
	}
}

6、在排序好的数组中添加一个数字,并将其插入合适的位置。

public class demo12
{  public static void main(String[] args)
	{   int a[]={23,43,235,78,23,45,45};
	    int b[]=new int[23];
		System.out.print("插入前的数组为:");
		java.util.Arrays.sort(a);
		for(int i=0;i<a.length;i++)
		{
			System.out.print(a[i]+" ");
		}
		int k=100;
		System.out.print("插入后的数组为:");
		for(int i=0;i<a.length;i++)
		{     
			b[i]=a[i]; }       //把A数组的值放入B中
			b[b.length-1]=k;
			java.util.Arrays.sort(b);       //对b重新进行排序。
			for(int j=0;j<b.length;j++)
		{
			System.out.print(b[j]+" ");
		}

	}
}

                                                                                                                                                       

【上篇】
【下篇】

抱歉!评论已关闭.