Advertisement
Guest User

Untitled

a guest
Nov 28th, 2014
162
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.98 KB | None | 0 0
  1. import java.lang.reflect.Method;
  2. import java.util.ArrayList;
  3. import java.util.List;
  4. import java.util.Random;
  5.  
  6.  
  7. public class Main {
  8.  
  9.     /**
  10.      * @param args
  11.      */
  12.     public static void main(String[] args) throws Exception{
  13.         // TODO Auto-generated method stub
  14.         List<Integer> lista = new ArrayList<Integer>();
  15.         Random generator = new Random();
  16.    
  17.         for(int i =0 ; i < 10 ; i++){
  18.             lista.add(generator.nextInt(10));
  19.            
  20.         }
  21.        
  22.         System.out.println(lista);
  23.         System.out.println(lista.size());
  24.         System.out.println(lista.get(lista.size()-1));
  25.        
  26.         System.out.println(MaxSearchAlgorithms.scanLeftToRight(lista));
  27.         System.out.println(MaxSearchAlgorithms.scanRightToLeft(lista));
  28.         System.out.println(MaxSearchAlgorithms.scanEvenNumber(lista));
  29.        
  30.         //=====================================================
  31.         Class reflectClass = MaxSearchAlgorithms.class;
  32.        
  33.        
  34.         Method[] methods = reflectClass.getMethods();
  35.         String tab[] = new String[methods.length];
  36.         for (int i = 0; i < methods.length; i++) {
  37.             if(methods[i].getName().startsWith("scan")){
  38.                 System.out.println("public method: " + methods[i]);
  39.                 tab[i] = methods[i].getName();
  40.                 ArrayList max2 = new ArrayList<>();
  41.                 Object Instance = reflectClass.newInstance();
  42.                 max2 = (ArrayList)methods[i].invoke(Instance, lista);
  43.                 System.out.println(max2);
  44.             }
  45.  
  46.            
  47.            
  48.         }
  49.  
  50.        
  51.  
  52.     }
  53.  
  54. }
  55.  
  56.  
  57. //=====================================MaxSearchAlgorithms.class============================================//
  58.  
  59.  
  60.  
  61. import java.util.ArrayList;
  62. import java.util.List;
  63.  
  64.  
  65. public class MaxSearchAlgorithms {
  66.     public static List scanLeftToRight(List lista){
  67.        
  68.         List<Integer> max = new ArrayList<Integer>();
  69.         max.add((int) lista.get(0));
  70.         int temp;
  71.        
  72.         for(int i = 0; i<lista.size(); i++){
  73.             temp=(int) lista.get(i);
  74.             if((int)max.get(max.size()-1) < temp){
  75.                 max.add(temp);
  76.             }
  77.         }
  78.        
  79.         return max;
  80.     }
  81.    
  82.     public static List scanRightToLeft(List lista){
  83.        
  84.         List<Integer> max = new ArrayList<Integer>();
  85.         max.add((int) lista.get(lista.size()-1));
  86.         int temp;
  87.        
  88.         for(int i = lista.size()-1; i >= 0 ; i--){
  89.             //System.out.println("index: " + i);
  90.             temp = (int)lista.get(i);
  91.             if((int)max.get(max.size()-1) < temp){
  92.                 max.add(temp);
  93.             }
  94.         }
  95.        
  96.         return max;
  97.     }
  98.    
  99.     public static List scanEvenNumber(List lista){
  100.         List<Integer> max = new ArrayList<Integer>();
  101.         if( lista != null ){
  102.             max.add( (int)lista.get(0) );
  103.             for( int i = 2; i < lista.size(); i += 2 ){
  104.                 if( (int)lista.get(i) > max.get( max.size() - 1 ) ){
  105.                     max.add( (int)lista.get(i) );
  106.                 }
  107.             }
  108.             for( int i = 1; i < lista.size(); i += 2 ){
  109.                 if( (int)lista.get(i) > max.get( max.size() - 1 ) ){
  110.                     max.add( (int)lista.get(i) );
  111.                 }
  112.             }
  113.             return max;
  114.         }
  115.         return null;
  116.     }
  117.  
  118. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement