Skip to content

Instantly share code, notes, and snippets.

@edinak1
Created October 30, 2015 18:04
Show Gist options
  • Save edinak1/d0700b7d1c23c7860a2e to your computer and use it in GitHub Desktop.
Save edinak1/d0700b7d1c23c7860a2e to your computer and use it in GitHub Desktop.
package masiv;
import java.util.Arrays;
import java.util.Random;
public class Sort {
public static void main(String[] args) {
int[]data=new int[10];
int[]data1=new int[100];
int[]data2=new int[5];
int[]data3=new int[2];
randomArray(data);
randomArray(data1);
randomArray(data2);
randomArray(data3);
System.out.println(0);
System.out.println(Arrays.toString(data));
sort(data);
System.out.println(Arrays.toString(data));
/////////////////////////////////////////////////
System.out.println(1);
System.out.println(Arrays.toString(data1));
sort(data1);
System.out.println(Arrays.toString(data1));
/////////////////////////////////////////////////
System.out.println(2);
System.out.println(Arrays.toString(data2));
sort(data2);
System.out.println(Arrays.toString(data2));
/////////////////////////////////////////////////
System.out.println(3);
System.out.println(Arrays.toString(data3));
sort(data3);
System.out.println(Arrays.toString(data3));
}
static void randomArray(int []data)
{
Random random = new Random();
for(int i=1;i<data.length;i++)
data[i]=random.nextInt(1000);
}
static void swap(int[]data,int k)
{
for(int i=0,temp; i<data.length-k; i++)
{
if(data[i]>data[i+1])
{
temp=data[i];
data[i]=data[i+1];
data[i+1]=temp;
}
}
}
static void sort(int []data)
{
long time=System.currentTimeMillis();
if(data==null || data.length<=1)
return;
for(int i=0,k=1;i<data.length-1;i++,k++)
{
if(masivSortRight(data))
{
System.out.println("Kolichestvo prohodov: "+i);
System.out.println("Time for sort: "+(System.currentTimeMillis()-time));
return;
}
swap(data,k);
}
}
static boolean masivSortRight(int[]data)
{
for(int i=0; i<data.length-1; i++)
{
if(data[i+1]<data[i])
return false;
}
return true;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment