Ò׽ؽØͼÈí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

javaËæ»úÅÅÁÐÊý×é

ÓÐʱÎÒÃÇÐèÒªËæ»úµÄÅÅÁÐÊý×éÖеÄÔªËØ£¬Ëæ»úÅÅÁÐÊý×飬Ŀǰ³£ÓõÄÓÐÁ½ÖÖ·½·¨£¬µÚÒ»ÖÖ¾ÍÊÇÔªËØA[i]¶ÔÓ¦Ò»¸öÓÅÏȼ¶P[i],¸ù¾ÝÓÅÏȼ¶×÷Ϊ¼üÖµÀ´´ÓÐÂÅÅÐòÊý×é;µÚ¶þÖÖ·½·¨¾ÍÊÇA[i]Ëæ»úµÄ¸úA[i]µ½A[n]ÖеÄÈÎÒâ¸öÔªËؽøÐн»»»,nΪÊý×éµÄ³¤¶È,ÏÂÃæÊÇÓÃjavaʵÏÖÒ»¸ö¼òµ¥ÊµÏÖ.
import java.util.Date;
import java.util.Random;
/*
* Ëæ¼´ÅÅÁÐÊý×飬¸ø¶¨Ò»¸öÊý×飬Ëæ¼´ÅÅÁÐÆäÖеÄÔªËØ£¬Ä¿Ç°Ö÷ÒªÓÐÁ½ÖÖ·½·¨
*/
public class RandomSort {

public static void main(String args[]){
int data[]=new int[]{1,42,51,62,8,94,23,13,40,5};
//int p[]=getRandom(1,-8,100);
//show(p);
show(data);
permuteBySort(data);
show(data);
randomizeInPlace(data);
show(data);
}

/*
* Ëæ»úÅÅÁÐÊý×é,ʹÓÃÓÅÏȼ¶·½Ê½,ÿ¸öÊý×éÔªËØA[i] ¶ÔÓ¦Ò»¸öÓÅÏȼ¶P[i]£¬
* È»ºóÒÀ¾ÝÓÅÏȼ¶¶ÔÊý×é½øÐÐÅÅÐò
*/
private static void permuteBySort(int[] data)
{
int len=data.length;
int len3=len*len*len;
int P[]=getRandom(1,len3,len);

//ðÅÝÅÅÐò
for(int i=len-1; i>0; i--)
{
for(int j=0; j<i ; j++)
{
if(P[j]>P[j+1])
{
int temp=data[j];
data[j]=data[j+1];
data[j+1]=temp;

temp=P[j];
P[j]=P[j+1];
P[j+1]=temp;
}
}
}
}
/*
* ÔªËØA[i]ÊÇ´Ó ÔªËØA[i]µ½A[n]ÖÐËæ»úÑ¡È¡µÄ
*/
private static void randomizeInPlace(int[] data)
{
Date dt=new Date();
Random random=new Random(dt.getSeconds());
int len=data.length;
for(int i=0; i<len; i++)
{
int pos=(int)(random.nextDouble()*(len-i+1)+i)-1;
int temp=data[i];
data[i]=data[pos];
data[pos]=temp;
}
}

/*
* »ñµÃÔÚaµ½bÖ®¼äµÄn¸öËæ»úÊý
*/
private static int[] getRandom(int a,int b,int n)
{
if(a>b)
{
int temp=a;
a=b;
b=temp;
}

Date dt=new Date();
Random random=new Random(dt.getSeconds());
int res[]=new int[n];
for(int i=0; i<n; i++)
{
res[i]=(int)(random.nextDouble()*(Math.abs(b-a)+1))+a;
}
return res;
}


private static void show(int[] data)
{
System.out.print


Ïà¹ØÎĵµ£º

javaÈëÃÅ

 Javaѧϰ´ÓÈëÃŵ½¾«Í¨ 
Ò»¡¢ JDK (Java Development Kit) 
JDKÊÇÕû¸öJavaµÄºËÐÄ£¬°üÀ¨ÁËJavaÔËÐл·¾³£¨Java Runtime Envirnment£©£¬Ò»¶ÑJava¹¤¾ßºÍJava»ù´¡µÄÀà¿â(rt.jar)¡£²»ÂÛʲôJavaÓ¦Ó÷þÎñÆ÷ʵÖʶ¼ÊÇÄÚÖÃÁËij¸ö°æ±¾µÄJDK¡£Òò´ËÕÆÎÕJDKÊÇѧºÃJavaµÄµÚÒ»²½¡£×îÖ÷Á÷µÄJ ......

ÓÃjavaʵÏֵĵü´úºÍµÝ¹é²åÈëÅÅÐò

ÏÂÃæʹÓÃÒ»¸öjavaʵÏֵĵü´ú°æµÄµÝ¹é°æµÄ²åÈëÅÅÐò¡£
package sort;
import java.util.Date;
import java.util.Random;
/*
* ²åÈëÅÅÐò
*/
public class InsertSort{
public static void main(String args[])
{
int len = 20;
Date date = new Date();
Random random = new Random(date.getSeconds()); ......

javaʵÏֵĵݹ鷽·¨ÄæÐò¶Ô²éÕÒ

ÏÂÃæÊÇʹÓÃjavaʵÏֵĵݹéÄæÐò¶Ô²éÕÒ£¬ËùνµÄÄæÐò¶Ô¾ÍÊÇÔÚÊý×éA[]ÖÐÈç¹û i < j ,²¢ÇÒA[i] > A[j], ÔòÎÒÃÇ˵A[i]ºÍA[j]ÊÇÒ»¶ÔÄæÐò¶Ô¡£Èç¹ûÓÃÆÕͨµÄË㷨ʵÏֵĻ°£¬²éÕÒµÄʱ¼ä¸´ÔӶȣ¬ÊÇO(N*N)£¬Ê¹ÓÃÕâÀïµÄ¶Ó¹æµÄ·½Ê½²éÕҵĻ°£¬Ê±¼ä¸´ÔÓ¶ÈÊÇO(N*lgN)
import java.util.Date;
import java.util.Random;
/*
* ʹÓõݹ ......

0ÔªÔÂн ±±¾©ÇóÖ° Java¿ª·¢

  ÔÚ±±¾©´ôÁËÒ»¸öÔ¶àÁË£¬ÎªÁËÉú´æ£¬±Ê¼Ç±¾µçÄÔÒ²¼úÂôÁË£¬²»ÖªµÀ¹¤×÷ÕâôÄÑÕÒ¡£
 
  Ò»¸öÕý¾­µÄÃæÊÔҲûÓС£ 
  ÎÒ´Ó07Äê±ÏÒµÒѾ­ÀË·Ñ2Äêʱ¼äÁË£¬ÎÒÔ¸ÒâÓðëÄêµÄ0н³êÀ´»»È¡ÎÒÈëÐпª·¢£»
  Ï£Íû±±¾©Óй«Ë¾ÌṩÈÃÎÒʵÏÖ×ÔÎÒ¼ÛÖµµÄƽ̨¡£
  Èç¹ûÄú¶ÔÎÒµÄÄÜÁ¦ÓÐÒÉÎÊ£¬¹µÍ¨¿ÉÒÔÁ˽â ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ