



Estude fácil! Tem muito documento disponível na Docsity
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Prepare-se para as provas
Estude fácil! Tem muito documento disponível na Docsity
Prepare-se para as provas com trabalhos de outros alunos como você, aqui na Docsity
Encontra documentos específicos para os exames da tua universidade
Prepare-se com as videoaulas e exercícios resolvidos criados a partir da grade da sua Universidade
Responda perguntas de provas passadas e avalie sua preparação.
Ganhe pontos para baixar
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Java treinos de java Java treinos de java Java treinos de java
Tipologia: Esquemas
1 / 5
Esta página não é visível na pré-visualização
Não perca as partes importantes!




//para testar: key=val, age=32, key2=val2, age=54, x=1, age=60, age=12, age= public class OrdenarNumerosEmStringChaveValor { public static void main(String[] args) throws Exception { BufferedReader br = new BufferedReader( new InputStreamReader(System. in )); String line = br.readLine(); if (line== null || line.isEmpty()) { System. out .println(0); return ; } String [] parts = line.split(","); List integerList = new ArrayList(); for (String part : parts) { System. out .println(part); String[] kv = part.split("=",2); System. out .println(kv[0]); System. out .println(kv[1]); //verifica se é numero if (kv[0].trim().matches("\d+")) { integerList.add(Integer. parseInt (kv[0])); } if (kv[1].trim().matches("\d+")) { integerList.add(Integer. parseInt (kv[1])); } } //aqui fica na ordem natual, do menor pro maior numero: // integerList.sort(null); //aqui fica na ordem reversa, primeiro numero na frente: integerList.sort(Comparator. reverseOrder ()); System. out .println(integerList); } } /////para testar: Reviver; public class Palindrono { public static void main(String[] args) throws Exception { BufferedReader br = new BufferedReader( new InputStreamReader(System. in )); String line = br.readLine(); if (line == null || line.isEmpty()) { System. out .println( true ); return ; } // remove todos caracteres especiais: line = line.toLowerCase().replaceAll("[^a-z0-9]+", ""); Deque filaPontaDupla = new ArrayDeque<>(); // empilha tudo: for ( int i = 0; i < line.length(); i++) { char c = line.charAt(i); filaPontaDupla.addLast(c); } boolean palind = true ; while (!filaPontaDupla.isEmpty() && palind== true ) { if (filaPontaDupla.peekFirst()==(filaPontaDupla.peekLast())) { filaPontaDupla.removeFirst(); if (!filaPontaDupla.isEmpty()) { filaPontaDupla.removeLast(); } } else { palind = false ; } } System. out .println(palind); }
////para testar (2 linhas): 3/ Apple banana apple, grape! banana apple == apple banana grape; 5/ apple apple banana banana grape == apple banana grape public class PalavrasMaisFrequentes { public static void main(String[] args) throws Exception { BufferedReader br = new BufferedReader( new InputStreamReader(System. in )); Map map = new HashMap(); // 1ª linha: k String linha1 = br.readLine(); if (linha1 == null ) return ; linha1 = linha1.trim(); int k = 0; if (linha1.matches("\d+")) { k = Integer. parseInt (linha1); } if (k <= 0) return ; // 2ª linha: texto String text = br.readLine(); if (text == null || text.isEmpty()) return ; // remove todos caracteres especiais: text = text.toLowerCase().replaceAll("[^a-z0-9]+", " ").trim(); // melhor que .split(" "), pois se tiver mais de 1 espaço, vai gerar palavras vazias String[] palavras = text.split("\s+"); for (String palavra : palavras) { if (map.containsKey(palavra)) { map.put(palavra, (map.get(palavra)) + 1); } else { map.put(palavra, 1); } // ou no lugar de if/else: // map.put(palavra, map.getOrDefault(palavra, 0) + 1); } List> list = new ArrayList>(map.entrySet()); Collections. sort (list, new Comparator>() { @Override public int compare(Map.Entry map1, Map.Entry map2) { int valorDesc = map2.getValue().compareTo(map1.getValue()); if (valorDesc != 0) { return valorDesc; } return map1.getKey().compareTo(map2.getKey()); } }); //pra nao estourar, buscando item inexistente na lista, vejo se i< k ou se < list.size for ( int i = 0; i < (k > list.size()? list.size() : k); i++) { System. out .println(list.get(i).getKey()); }
////pra testar (2 linhas: 2 7 11 15/ 9) public class TwoSums { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader( new InputStreamReader(System. in )); Map map = new HashMap(); // primeira linha: array de numeros String[] partes = br.readLine().trim().split("\s+"); int [] nums = new int [partes.length]; for ( int i = 0; i < partes.length; i++) { nums[i] = Integer. parseInt (partes[i]); } // segunda linha: o target int target = Integer. parseInt (br.readLine().trim()); for ( int i = 0; i < nums.length; i++) { int complemento = target - nums[i]; if (map.containsKey(complemento)) { int j = map.get(complemento); // indice do complemento visto antes System. out .println(j + " " + i); return ; // encerra, já que o enunciado garante exatamente uma solução } // registra o número atual para futuras comparações map.put(nums[i], i); } } } ////{ [ ( ) ] } public class ValidarParenteses { public static void main(String[] args) throws Exception { BufferedReader br = new BufferedReader( new InputStreamReader(System. in )); // lê a string de entrada String s = br.readLine(); if (s == null || s.isEmpty()) { System. out .println("true"); // vazio é considerado válido return ; } // ou: Deque stack = new LinkedList<>(); //+ pesada, util pra remv obj do meio Deque stack = new ArrayDeque<>(); for ( int i = 0; i < s.length(); i++) { // aqui vai percorrer cada caractere de s: char c = s.charAt(i); if (c == '(' || c == '[' || c == '{') { stack.push(c); } else if (c == ')' || c == ']' || c == '}') { if (stack.isEmpty()) { System. out .println("false"); return ; } char topo = stack.peek(); // olha o último na pilha, sem remover: if ((c == ')' && topo == '(') || (c == ']' && topo == '[') || (c == '}' && topo == '{')) { stack.pop(); // válido, remove ultimo do topo } else { // não combina → inválido System. out .println("false"); return ; } } }
// válido só se não ficou nada aberto System. out .println(stack.isEmpty()? "true" : "false");