Advertisement
89yoyos

Coin-Flip Sort Java Code

Oct 23rd, 2013
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.81 KB | None | 0 0
  1. package coinFlipSort;
  2.  
  3. public class coinFlipSort {
  4.     public static void main ( String[] args ){
  5.        
  6.        
  7.         int flips = 1000;
  8.         String s = "";
  9.         int[] arr  = new int [flips+2];
  10.         int[] arr2 = new int [flips+2];
  11.        
  12.         for (int i = 0; i<flips; i++){
  13.             s = s + Integer.toString(((int) Math.ceil(((Math.random()*10)%2)-1))).replace("0", "H").replace("1", "T");
  14.         }
  15.        
  16.         System.out.println(s);
  17.        
  18.         //Heads
  19.        
  20.         for (int i = flips; i>0; i--){
  21.            
  22.             String s2 = "";
  23.            
  24.             for (int x = 1; x <= i; x++){
  25.                 s2 = s2 + "H";
  26.             }
  27.            
  28.             int count = 0;
  29.            
  30.             while (s.indexOf(s2)>=0){
  31.                
  32.                 count++;
  33.                 s=s.replaceFirst(s2, Integer.toString(i));
  34.                
  35.             }
  36.            
  37.             arr[i]=count;
  38.            
  39.         }
  40.        
  41.         //Tails
  42.        
  43.         for (int i = flips; i>0; i--){
  44.            
  45.             String s2 = "";
  46.            
  47.             for (int x = 1; x <= i; x++){
  48.                 s2 = s2 + "T";
  49.             }
  50.            
  51.             int count = 0;
  52.            
  53.             while (s.indexOf(s2)>=0){
  54.                
  55.                 count++;
  56.                 s=s.replaceFirst(s2, Integer.toString(i));
  57.                
  58.             }
  59.            
  60.             arr2[i]=count;
  61.            
  62.         }
  63.        
  64.         //Print
  65.        
  66.         System.out.println("-----------------------------------------");
  67.         System.out.println("#\t|\tHeads\t|\tTails\t|");
  68.         System.out.println("-----------------------------------------");
  69.        
  70.         for (int i = flips; i>0; i--){
  71.             if(arr[i]>0){
  72.                 System.out.println(Integer.toString(i) + "\t|\t" + Integer.toString(arr[i]) + "\t|\t" + Integer.toString(arr2[i]) + "\t|");
  73.             }
  74.         }
  75.        
  76.     }
  77. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement