Advertisement
vinhnguyen1211

teko_test

Jan 21st, 2018
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.45 KB | None | 0 0
  1. package practices;
  2.  
  3. /**
  4.  * @author Vinh
  5.  *
  6.  */
  7.  
  8. public class max_5th {
  9.  
  10.     public static void main(String[] args) {
  11.         new max_5th();
  12.     }
  13.    
  14.     public max_5th() {
  15.         //list();
  16.         System.out.println("Element max 5th in array");
  17.         sort();
  18.        
  19.         //recur for max 5th in array
  20.         //first: find max
  21.         int max_arr = arr[0];
  22.         for(int item: arr) {
  23.             if(item > max_arr) {
  24.                 max_arr = item;
  25.             }
  26.         }
  27.         //recur
  28.         int max_5th = sortRecur(arr, 5, max_arr);
  29.         System.out.println("sort2: " +max_5th);
  30.         //
  31.         InsertionSort();
  32.         System.out.println("Anagram String");
  33.         boolean F = isAnagram("bbaAawwB", "abwabwBA");
  34.         System.out.println(F);
  35.     }
  36.    
  37.     int n = 100;
  38.     int[] arr = randomArrary(n);
  39.    
  40.     int[] randomArrary(int n) {
  41.         int arr[] = new int[n];
  42.         for(int i = 0 ; i < arr.length ; i++) {
  43.             arr[i] = (int) Math.ceil(Math.random()*(n*10));
  44.         }
  45.        
  46.         return arr;
  47.     }
  48.    
  49.     void list() {
  50.         for(int item: arr) {
  51.             System.out.println(item);
  52.         }
  53.     }
  54.    
  55.     void sort() {
  56.         int max1 = arr[0];
  57.         int max2 = arr[0];
  58.         int max3 = arr[0];
  59.         int max4 = arr[0];
  60.         int max5 = arr[0];
  61.        
  62.         for(int item: arr) {
  63.             if(item > max1) {
  64.                 max1 = item;
  65.             }
  66.         }
  67.         System.out.println("max1: " +max1);
  68.        
  69.         for(int item: arr) {
  70.             if(item > max2 && item < max1) {
  71.                 max2 = item;
  72.             }
  73.         }
  74.         System.out.println("max2: " +max2);
  75.        
  76.         for(int item: arr) {
  77.             if(item > max3 && item < max2) {
  78.                 max3 = item;
  79.             }
  80.         }
  81.         System.out.println("max3: " +max3);
  82.        
  83.         for(int item: arr) {
  84.             if(item > max4 && item < max3) {
  85.                 max4 = item;
  86.             }
  87.         }
  88.         System.out.println("max4: " +max4);
  89.        
  90.         for(int item: arr) {
  91.             if(item > max5 && item < max4) {
  92.                 max5 = item;
  93.             }
  94.         }
  95.         System.out.println("max5: " +max5);
  96.        
  97.        
  98.     }
  99.    
  100.    
  101.    
  102.     /**
  103.      * @param arr: an array to
  104.      * @param n: max element in the order of n of array
  105.      * @param max: max 1st of an array
  106.      * @return max n-th element of the array
  107.      */
  108.     int sortRecur(int[] arr, int n, int max) {
  109.         int max_return = arr[0];
  110.         for(int item: arr) {
  111.             if(item > max_return && item < max) {
  112.                 max_return = item;
  113.             }
  114.         }
  115.        
  116.         if( n -1 <= 1 ) {
  117.             return max_return;
  118.         }
  119.         else {
  120.             return sortRecur(arr, n-1, max_return);
  121.         }
  122.        
  123.     }
  124.    
  125.     void InsertionSort() {
  126.         for(int i = 0 ; i < arr.length ; i++) {
  127.             int j = i - 1;
  128.             int key = arr[i];
  129.             while (j >= 0 && arr[j] > key) {
  130.                 arr[j+1] = arr[j];
  131.                 j--;
  132.             }
  133.             arr[j+1] = key;
  134.         }
  135.         System.out.println("sorted array");
  136.         for(int i = n -1 ; i >= n-5 ; i--) {
  137.             System.out.println(arr[i]);
  138.         }
  139.     }
  140.    
  141.    
  142.     /**
  143.      * @param s1: string s1
  144.      * @param s2: string s2
  145.      * @return true if s1, s2 is Anagram, false if isn't
  146.      */
  147.     boolean isAnagram(String s1, String s2) {
  148.         if(s1.length() == s2.length()) {
  149.             char[] s1_converted = toCharArray(s1);
  150.             char[] s2_converted = toCharArray(s2);
  151.             for(int i = 0 ; i < s1_converted.length ; i++) {
  152.                 if(s1_converted[i] != s2_converted[i]) {
  153.                     return false;
  154.                 }
  155.             }
  156.         }
  157.         else {
  158.             return false;
  159.         }
  160.        
  161.        
  162.         return true;
  163.     }
  164.    
  165.     /**
  166.      * @param string s: string to convert and be ordered
  167.      * @return array char: array of string ordered
  168.      */
  169.     char[] toCharArray(String s){
  170.         char[] a = new char[s.length()];
  171.         for(int i = 0 ; i < s.length() ; i++) {
  172.             a[i] = s.charAt(i);
  173.         }
  174.         for(int i = 1 ; i < a.length ; i++) {
  175.             int j = i -1;
  176.             int key = a[i];
  177.             while(j >= 0 && a[j] > key) {
  178.                 a[j+1] = a[j];
  179.                 j--;
  180.             }
  181.             a[j+1] =(char) key;
  182.         }
  183.        
  184.         return a;
  185.     }
  186.    
  187.    
  188.    
  189.    
  190. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement