i want to change sortCards methods to recursive format please help and don\'t ch
ID: 3659949 • Letter: I
Question
i want to change sortCards methods to recursive format please help and don't change cardlessThan method .... and this method should use selection sort public static String[] sortCards(String[] s){ for (int i = s.length - 1; i >= 1; i--){ //fix // Find the maximum in the list[0..i] String currentMax = s[0]; int currentMaxIndex = 0; for (int j = 1; j <= i; j++) { if (cardLessThan(currentMax,s[j])){ currentMax = s[j]; currentMaxIndex = j; } } // Swap list[i] with s[currentMaxIndex] if necessary; if (currentMaxIndex !=i) { s[currentMaxIndex] = s[i]; s[i] = currentMax; } } return s; } static boolean cardLessThan(String s1, String s2){ char s1s = s1.charAt(s1.length()-1); //suites char s2s = s2.charAt(s2.length()-1); if(s1s < s2s) return true; else if(s1s > s2s) return false; // Same suite cards - order determined by card number String n1 = s1.substring(0,s1.length()-1); String n2 = s2.substring(0,s2.length()-1); if(n1.equals("A") && !n2.equals("A")) return true; if(n1.equals("2") && !n2.equals("A") && !n2.equals("2")) return true; return false; }Explanation / Answer
Sorting the cards import java.util.Random; import java.util.Arrays; public class SortCards { public static void main(String [] args) { Card [] deck = shuffleAndDeal(); System.out.println("Shuffled deck:"); for (Card card: deck) { System.out.println(card); } Arrays.sort(deck); System.out.println("Sorted deck:"); for (Card card: deck) { System.out.println(card); } } public static Card [] shuffleAndDeal() { String [] suits = {"Spades", "Hearts", "Diamonds", "Clubs"}; String [] values = {"2","3","4","5","6","7","8","9","10","J","Q","K","A"}; Card [] deck = new Card [52]; //create a deck int i = 0; for (String suit: suits) { for (String value: values) { deck[i] = new Card(suit, value); i++; } } // shuffle the deck Random rand = new Random(); for (int j = 0; j < 200; ++j) { int index1 = rand.nextInt(52); int index2 = rand.nextInt(52); Card temp = deck[index1]; deck[index1] = deck[index2]; deck[index2] = temp; } return deck; } }Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.