Você está na página 1de 22

Exercícios básicos de Java

1. Escreva um programa Java para imprimir 'Hello' na tela e depois imprima seu nome em uma
linha separada.
Saída esperada:
Olá
Persson Abrantes

2. Escreva um programa Java para imprimir a soma de dois números.


Dados de teste:
74 + 36
Saída esperada:
110

3. Escreva um programa Java para dividir dois números e imprima na tela.


Dados de teste :
50/3
Saída esperada:
16

4. Escreva um programa Java para imprimir o resultado das seguintes operações.


Dados de teste:
uma. -5 + 8 * 6
b. (55+9) % 9
c. 20 + -3*5/8
d. 5 + 15 / 3 * 2 - 8% 3
Saída esperada:
43
1
19
13

5. Escreva um programa Java que receba dois números como entrada e exiba o produto de dois
números.
Dados de teste:
Insira o primeiro número: 25
Insira o segundo número: 5
Saída esperada:
25 x 5 = 125

6. Escreva um programa Java para imprimir a soma (adição), multiplicar, subtrair, dividir e o
resto de dois números.
Dados de teste:
Insira o primeiro número: 125
Insira o segundo número: 24
Saída esperada:
125 + 24 = 149
125 - 24 = 101
125 x 24 = 3000
125 / 24 = 5
125 mod 24 = 5

7. Escreva um programa Java que receba um número como entrada e imprima sua tabela de
multiplicação até 10.
Dados de teste:
Insira um número: 8
Saída esperada:
8x1=8
8 x 2 = 16
8 x 3 = 24
...
8 x 10 = 80

8. Escreva um programa Java para exibir o padrão a seguir.


Padrão de amostra:
Java
Jaavaa
J J aaaaa V V aaaaa
JJ a a V a a

9. Escreva um programa Java para calcular as expressões especificadas e imprimir a saída.


Dados de teste:
((25,5 * 3,5 - 3,5 * 3,5) / (40,5 - 4,5))
Saída esperada
2.138888888888889

10. Escreva um programa Java para calcular uma fórmula especificada.


Fórmula especificada:
4,0 * (1 - (1,0/3) + (1,0/5) - (1,0/7) + (1,0/9) - (1,0/11))
Saída esperada
2.9760461760461765

11. Escreva um programa Java para imprimir a área e o perímetro de um círculo.


Dados de teste:
Raio = 7,5
Saída esperada
O perímetro é = 47.12388980384689
A área é = 176,71458676442586

12. Escreva um programa Java que receba três números como entrada para calcular e imprimir
a média dos números.

13. Escreva um programa Java para imprimir a área e o perímetro de um retângulo.


Dados de teste:
Largura = 5,5 Altura = 8,5
Saída esperada
A área é 5,6 * 8,5 = 47,60
O perímetro é 2 * (5,6 + 8,5) = 28,20

14. Escreva um programa Java para imprimir uma bandeira americana na tela.
Saída esperada
* * * * * * ==================================
* * * * * ==================================
* * * * * * ==================================
* * * * * ==================================
* * * * * * ==================================
* * * * * ==================================
* * * * * * ==================================
* * * * * ==================================
* * * * * * ==================================
==============================================
==============================================
==============================================
==============================================
==============================================
==============================================

15. Escreva um programa Java para trocar duas variáveis.

16. Escreva um programa Java para imprimir um rosto.


Saída esperada
+"""""+
[| o o |]
|^|
| '-' |
+-----+

17. Escreva um programa Java para somar dois números binários.


Dados de entrada:
Insira o primeiro número binário: 10
Insira o segundo número binário: 11
Saída esperada
Soma de dois números binários: 101

18. Escreva um programa Java para multiplicar dois números binários.


Dados de entrada:
Insira o primeiro número binário: 10
Insira o segundo número binário: 11
Saída esperada
Produto de dois números binários: 110

19. Escreva um programa Java para converter um número decimal em um número binário.
Dados de entrada:
Insira um número decimal: 5
Saída esperada
O número binário é: 101

20. Escreva um programa Java para converter um número decimal em número hexadecimal.
Dados de entrada:
Insira um número decimal: 15
Saída esperada
O número hexadecimal é: F

21. Escreva um programa Java para converter um número decimal em número octal.
Dados de entrada:
Insira um número decimal: 15
Saída esperada
O número octal é: 17

22. Escreva um programa Java para converter um número binário em número decimal.
Dados de entrada:
Insira um número binário: 100
Saída esperada
Número Decimal: 4

23. Escreva um programa Java para converter um número binário em número hexadecimal.
Dados de entrada:
Insira um número binário: 1101
Saída esperada
Valor hexadecimal
:D

24. Escreva um programa Java para converter um número binário em um número octal.
Dados de entrada:
Insira um número binário: 111
Saída esperada
Número octal: 7

25. Escreva um programa Java para converter um número octal em um número decimal.
Dados de entrada:
Insira qualquer número octal: 10
Saída esperada
Número decimal equivalente: 8

26. Escreva um programa Java para converter um número octal em um número binário.
Dados de entrada:
Insira qualquer número octal: 7
Saída esperada
Número binário equivalente: 111

27. Escreva um programa Java para converter um número octal em um número hexadecimal.
Dados de entrada:
Insira um número octal: 100
Saída esperada
Número hexadecimal equivalente: 40

28. Escreva um programa Java para converter um número hexadecimal em um número


decimal.
Dados de entrada:
Insira um número hexadecimal: 25
Saída esperada
O número decimal equivalente é: 37

29. Escreva um programa Java para converter um número hexadecimal em um número binário.
Dados de entrada:
Digite o número hexadecimal: 37
Saída esperada
O Número Binário Equivalente é: 110111

30. Escreva um programa Java para converter um número hexadecimal em octal.


Dados de entrada:
Insira um número hexadecimal: 40
Saída esperada
O equivalente do número octal é: 100
31. Escreva um programa Java para verificar se o Java está instalado em seu computador.
Saída esperada
Versão Java: 1.8.0_71
Versão do Java Runtime: 1.8.0_71-b15
Java Home: /opt/jdk/jdk1.8.0_71/jre
Fornecedor Java: Oracle Corporation
URL do fornecedor Java: http://Java.oracle.com/
Caminho da classe Java: .

32. Escreva um programa Java para comparar dois números.


Dados de entrada:
Insira o primeiro inteiro: 25
Insira o segundo inteiro: 39
Saída esperada
25 != 39
25 < 39
25 <= 39

33. Escreva um programa Java e calcule a soma dos dígitos de um inteiro.


Dados de entrada:
Insira um número inteiro: 25
Saída esperada
A soma dos algarismos é: 7

34. Escreva um programa Java para calcular a área de um hexágono.


Área de um hexágono = (6 * s^2)/(4*tan(π/6))
onde s é o comprimento de um lado
Dados de entrada:
Insira o comprimento de um lado do hexágono: 6
Saída esperada
A área do hexágono é: 93,53074360871938

35. Escreva um programa Java para calcular a área de um polígono.


Área de um polígono = (n*s^2)/(4*tan(π/n))
onde n é o polígono de n lados e s é o comprimento de um lado
Dados de entrada:
Insira o número de lados do polígono: 7
Insira o comprimento de um dos lados: 6
Saída esperada
A área é: 130.82084798405722

36. Escreva um programa Java para calcular a distância entre dois pontos na superfície da Terra.
Distância entre os dois pontos [ (x1,y1) & (x2,y2)]
d = raio * arccos(sen(x1) * sin(x2) + cos(x1) * cos(x2) * cos(y1 - y2))
Raio da Terra r = 6371,01 Quilômetros
Dados de entrada:
Insira a latitude da coordenada 1: 25
Insira a longitude da coordenada 1: 35
Insira a latitude da coordenada 2: 35,5
Insira a longitude da coordenada 2: 25,5
Saída esperada
A distância entre esses pontos é: 1480,0848451069087 km

37. Escreva um programa Java para reverter uma string.


Dados de entrada:
Insira uma string: A raposa marrom rápida
Saída esperada
Cadeia reversa: xof nworb kciuq ehT

38. Escreva um programa Java para contar as letras, espaços, números e outros caracteres de
uma string de entrada.
Saída esperada
A string é: Aa kiu, eu swd skieo 236587. GH kiu: sieo?? 25,33
letra: 23
espaço: 9
número: 10
outro: 6

39. Escreva um programa Java para criar e exibir um número exclusivo de três dígitos usando 1,
2, 3, 4. Conte também quantos números de três dígitos existem.
Saída esperada
123
124
...

431
432
O número total do número de três dígitos é 24

40. Escreva um programa Java para listar os conjuntos de caracteres disponíveis em objetos
charset.
Saída esperada
Lista de conjuntos de caracteres disponíveis:
Big5
Big5-HKSCS
CESU-8
EUC-JP
EUC-KR
GB18030
GB2312
GBK

x-SJIS_0213
x-UTF-16LE-BOM
X-UTF-32BE-BOM
X-UTF-32LE-BOM
x-windows-50220
x-windows-50221
x-windows-874
x-windows-949
x-windows-950
x-windows-iso2022jp

41. Escreva um programa Java para imprimir o valor ascii de um determinado caractere.
Saída esperada
O valor ASCII de Z é: 90

42. Escreva um programa Java para inserir e exibir sua senha.


Saída esperada
Insira sua Senha:
Sua senha era: abc@123

43. Escreva um programa Java para imprimir a seguinte string em um formato específico (veja a
saída).
Saída de Amostra
Brilha Brilha Estrelinha,
Como eu me pergunto o que você é!
Acima do mundo tão alto,
Como um diamante no céu.
Brilha Brilha Estrelinha,
Como eu me pergunto o que você é

44. Escreva um programa Java que aceite um inteiro (n) e calcule o valor de n+nn+nnn.
Saída de amostra:
Número de entrada: 5
5 + 55 + 555

45. Escreva um programa Java para encontrar o tamanho de um arquivo especificado.


Saída de amostra:
/home/students/abc.txt : 0 bytes
/home/students/test.txt : 0 bytes
46. Escreva um programa Java para exibir a hora do sistema.
Saída de amostra:
Data atual: Sex 16 de junho 14:17:40 IST 2017

47. Escreva um programa Java para exibir a data e hora atual em um formato específico.
Saída de amostra:
Agora: 16/06/2017 08:52:03.066

48. Escreva um programa Java para imprimir os números ímpares de 1 a 99. Imprime um
número por linha.
Saída de amostra:
1
3
5
7
9
11
....

91
93
95
97
99

49. Escreva um programa Java para aceitar um número e verifique se o número é par ou não.
Imprime 1 se o número for par ou 0 se o número for ímpar.
Saída de amostra:
Insira um número: 20
1

50. Escreva um programa Java para imprimir números entre 1 e 100 que são divisíveis por 3, 5 e
por ambos.
Saída de amostra:
Dividido por 3:
3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48, 51, 54, 57
, 60, 63, 66, 69, 72, 75, 78, 81, 84, 87, 90, 93, 96, 99,

Dividido por 5:
5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75, 80, 85, 90,
95,

Dividido por 3 e 5:
15, 30, 45, 60, 75, 90,

51. Escreva um programa Java para converter uma string em um inteiro em Java.
Saída de amostra:
Insira um número (string): 25
O valor inteiro é: 25

52. Escreva um programa Java para calcular a soma de dois inteiros e retornar true se a soma
for igual a um terceiro inteiro.
Saída de amostra:
Digite o primeiro número: 5
Insira o segundo número: 10
Insira o terceiro número: 15
O resultado é: verdade

53. Escreva um programa Java que aceite três inteiros do usuário e retorne true se o segundo
número for maior que o primeiro número e o terceiro número for maior que o segundo
número. Se "abc" for verdadeiro, o segundo número não precisa ser maior que o primeiro.
Saída de amostra:
Digite o primeiro número: 5
Insira o segundo número: 10
Insira o terceiro número: 15
O resultado é: verdade

54. Escreva um programa Java que aceite três inteiros do usuário e retorne true se dois ou mais
deles (inteiros) tiverem o mesmo dígito mais à direita. Os inteiros são não negativos.
Saída de amostra:
Digite o primeiro número: 5
Insira o segundo número: 10
Insira o terceiro número: 15
O resultado é: verdade

55. Escreva um programa Java para converter segundos em horas, minutos e segundos.
Saída de amostra:
Segundos de entrada: 86399
23:59:59

56. Escreva um programa Java para encontrar o número de valores em um determinado


intervalo divisível por um determinado valor.
Por exemplo x = 5, y=20 ep =3, encontre o número de inteiros dentro do intervalo x..y e que são
divisíveis por p i.e. { i :x ≤ i ≤ y, i mod p = 0 }
Saída de amostra:
5
57. Escreva um programa Java que aceite um inteiro e conte os fatores do número.
Saída de amostra:
Insira um número inteiro: 25
3

58. Escreva um programa Java para colocar em maiúscula a primeira letra de cada palavra em
uma frase.
Saída de amostra:
Digite uma frase: a rápida raposa marrom pula sobre o cachorro preguiçoso.
A raposa marrom rápida pula sobre o cachorro preguiçoso.

59. Escreva um programa Java para converter uma determinada string em minúsculas.
Saída de amostra:
Insira uma string: A RÁPIDA RAPOSA MARROM PULA SOBRE O CÃO PREGUIÇOSO.
a rápida raposa marrom salta sobre o cachorro preguiçoso.

60. Escreva um programa Java para encontrar a penúltima (penúltima) palavra de uma frase.
Saída de amostra:
Insira uma corda: A rápida raposa marrom pula sobre o cachorro preguiçoso.
Penúltima palavra: preguiçoso

61. Escreva um programa Java para inverter uma palavra.


Saída de amostra:
Insira uma palavra: dsaf
Palavra inversa: fasd

62. Escreva um programa Java que aceite três valores inteiros e retorne true se um deles for 20
ou mais e menor que as subtrações dos outros.
Saída de amostra:
Insira o primeiro número: 15
Insira o segundo número: 20
Insira o terceiro número: 25
falso

63. Escreva um programa Java que aceite dois valores inteiros do usuário e retorne os valores
maiores. No entanto, se os dois valores forem iguais, retorne 0 e retorne o valor menor se os
dois valores tiverem o mesmo resto quando divididos por 6.
Saída de amostra:
Digite o primeiro número: 12
Insira o segundo número: 13
Resultado: 13

64. Escreva um programa Java que aceite dois valores inteiros entre 25 e 75 e retorne true se
houver um dígito comum em ambos os números.
Saída de amostra:
Insira o primeiro número: 35
Insira o segundo número: 45
Resultado: verdadeiro

65. Escreva um programa Java para calcular os módulos de dois números sem usar nenhum
operador de módulo embutido.
Saída de amostra:
Digite o primeiro número: 19
Insira o segundo número: 7
5

66. Escreva um programa Java para calcular a soma dos primeiros 100 números primos.
Saída de amostra:
Soma dos 100 primeiros números primos: 24133

67. Escreva um programa Java para inserir uma palavra no meio de outra string.
Insira "Tutorial" no meio de "Python 3.0", então o resultado será Python Tutorial 3.0
Saída de amostra:
Tutorial Python 3.0

68. Escreva um programa Java para criar uma nova string de 4 cópias dos últimos 3 caracteres
da string original. O comprimento da string original deve ser 3 e acima.
Saída de amostra:
3.03.03.03.0

69. Escreva um programa Java para extrair a primeira metade de uma string de comprimento
par.
Dados de teste: Python
Saída de amostra:
Pyt

70. Escreva um programa Java para criar uma string no formato short_string + long_string +
short_string a partir de duas strings. As cordas não devem ter o mesmo comprimento.
Dados de teste: Str1 = Python
Str2 = Tutorial
Saída de amostra:
PythonTutorialPython

71. Escreva um programa Java para criar a concatenação das duas strings, exceto removendo o
primeiro caractere de cada string. O comprimento das strings deve ser 1 e acima.
Dados de teste: Str1 = Python
Str2 = Tutorial
Saída de amostra:
tutorial

72. Escreva um programa Java para criar uma nova string pegando os três primeiros caracteres
de uma determinada string. Se o comprimento da string fornecida for menor que 3, use "#"
como caracteres substitutos.
Dados de teste: Str1 = " "
Saída de amostra:
###

73. Escreva um programa Java para criar uma nova string pegando o primeiro e o último
caracteres de duas strings fornecidas. Se o comprimento de qualquer string for 0, use "#" para
caractere ausente.
Dados de teste: str1 = "Python"
str2 = " "
Saída de amostra:
P#

74. Escreva um programa Java para testar se 10 aparece como o primeiro ou o último elemento
de um array de inteiros. O comprimento da matriz deve ser g
maior ou igual a 2.
Saída de amostra:
Dados de teste: matriz = 10, -20, 0, 30, 40, 60, 10
verdadeiro

75. Escreva um programa Java para testar se o primeiro e o último elemento de um array de
inteiros são iguais. O comprimento da matriz deve ser maior ou igual a 2.
Dados de teste: matriz = 50, -20, 0, 30, 40, 60, 10
Saída de amostra:
falso

76. Escreva um programa Java para testar se o primeiro ou o último elemento de dois arrays de
inteiros são iguais. O comprimento da matriz deve ser maior ou igual a 2.
Dados de teste: array1 = 50, -20, 0, 30, 40, 60, 12
matriz2 = 45, 20, 10, 20, 30, 50, 11
Saída de amostra:
falso

77. Escreva um programa Java para criar um novo array de comprimento 2 a partir de dois
arrays de inteiros com três elementos e o novo array conterá o primeiro e o último elemento
dos dois arrays.
Dados de teste: array1 = 50, -20, 0
matriz2 = 5, -50, 10
Saída de amostra:
Matriz1: [50, -20, 0]
Matriz2: [5, -50, 10]
Nova Matriz: [50, 10]

78. Escreva um programa Java para testar se um determinado array de inteiros de


comprimento 2 contém um 4 ou um 7.
Saída de amostra:
Matriz Original: [5, 7]
verdadeiro

79. Escreva um programa Java para girar um array (comprimento 3) de inteiros na direção
esquerda.
Saída de amostra:
Matriz Original: [20, 30, 40]
Matriz girada: [30, 40, 20]

80. Escreva um programa Java para obter o maior valor entre o primeiro e o último elemento
de um array (comprimento 3) de inteiros.
Saída de amostra:
Matriz Original: [20, 30, 40]
Maior valor entre o primeiro e o último elemento: 40

81. Escreva um programa Java para trocar o primeiro e o último elemento de um array (o
comprimento deve ser pelo menos 1) e crie um novo array.
Saída de amostra:
Matriz Original: [20, 30, 40]
Novo array após trocar o primeiro e o último elemento: [40, 30, 20]

82. Escreva um programa Java para encontrar o maior elemento entre o primeiro, o último e os
valores médios de uma matriz de inteiros (comprimento par).
Saída de amostra:
Matriz original: [20, 30, 40, 50, 67]
Maior elemento entre os valores primeiro, último e médio: 67

83. Escreva um programa Java para multiplicar elementos correspondentes de dois arrays de
inteiros.
Saída de amostra:
Matriz1: [1, 3, -5, 4]

Matriz2: [1, 4, -5, -2]

Resultado: 1 12 25 -8
84. Escreva um programa Java para pegar os três últimos caracteres de uma determinada string
e adicionar os três caracteres na frente e no verso da string. O comprimento da string deve ser
maior que três ou mais.
Dados de teste: "Python" será "honPythonhon"
Saída de amostra:
honPythonhon

85. Escreva um programa Java para verificar se uma string começa com uma palavra
especificada.
Dados de exemplo: string1 = "Olá, tudo bem?"
Saída de amostra:
verdadeiro

86. Escreva um programa Java que comece com um inteiro n, divida n por 2 se n for par ou
multiplique por 3 e adicione 1 se n for ímpar, repita o processo até n = 1.

87. Escreva um programa Java que leia um inteiro e calcule a soma de seus dígitos e escreva o
número de cada dígito da soma em inglês.

88. Escreva um programa Java para obter o ambiente atual do sistema e as propriedades do
sistema.

89. Escreva um programa Java para verificar se um gerenciador de segurança já foi estabelecido
para o aplicativo atual ou não.

90. Escreva um programa Java para obter o valor da variável de ambiente PATH, TEMP,
USERNAME.

91. Escreva um programa Java para medir quanto tempo um código leva para ser executado em
nanossegundos.

92. Escreva um programa Java para contar o número de elementos pares e ímpares em um
determinado array de inteiros.

93. Escreva um programa Java para testar se um array de inteiros contém um elemento 10
próximo a 10 ou um elemento 20 próximo a 20, mas não ambos.

94. Escreva um programa Java para reorganizar todos os elementos de um determinado array
de inteiros de modo que todos os números ímpares venham antes de todos os números pares.

95. Escreva um programa Java para criar um array (comprimento # 0) de valores de string. Os
elementos conterão "0", "1", "2" … a … n-1.
96. Escreva um programa Java para verificar se há um 10 em um determinado array de inteiros
com um 20 em algum lugar mais adiante no array.

97. Escreva um programa Java para verificar se um array de inteiros contém um número
especificado próximo um do outro ou se há dois mesmos números especificados separados por
um elemento.

98. Escreva um programa Java para verificar se o valor 20 aparece três vezes e não há 20
próximos um do outro em um determinado array de inteiros.

99. Escreva um programa Java para verificar se um número especificado aparece em cada par
de elementos adjacentes de um determinado array de inteiros.

100. Escreva um programa Java para contar os dois elementos de dois arrays de inteiros de
mesmo comprimento, com diferença de 1 ou menos.

101. Escreva um programa Java para verificar se o número de 10 for maior que o número 20 em
uma determinada matriz de inteiros.

102. Escreva um programa Java para verificar se um array especificado de inteiros contém 10
ou 30.

103. Escreva um programa Java para criar um novo array a partir de um determinado array de
inteiros, o novo array conterá os elementos do array dado após o último valor do elemento 10.

104. Escreva um programa Java para criar um novo array a partir de um determinado array de
inteiros, o novo array conterá os elementos do array dado antes do último valor do elemento
10.

105. Escreva um programa Java para verificar se um grupo de números (l) no início e no final de
um determinado array é o mesmo.

106. Escreva um programa Java para criar um novo array que seja deslocado à esquerda de um
determinado array de inteiros.

107. Escreva um programa Java para verificar se um array de inteiros contém três números
adjacentes crescentes.

108. Escreva um programa Java para somar todos os dígitos de um dado inteiro positivo até que
o resultado tenha um único dígito.

109. Escreva um programa Java para formar uma forma de escada de n moedas onde cada k-
ésima linha deve ter exatamente k moedas.
110. Escreva um programa Java para verificar se um dado inteiro é uma potência de 4 ou não.
Dado num = 64, retorne verdadeiro. Dado num = 6, retorne falso.

111. Escreva um programa Java para somar dois números sem usar nenhum operador
aritmético.
Dado x = 10 e y = 12; resultado = 22

112. Escreva um programa Java para calcular o número de zeros à direita em um fatorial.
7! = 5040, portanto a saída deve ser 1

113. Escreva um programa Java para mesclar dois arrays ordenados de inteiros e criar um novo
array ordenado.
matriz1 = [1,2,3,4]
matriz2 = [2,5,7, 8]
resultado = [1,2,2,3,4,5,7,8]

114. Escreva um programa Java para uma string e um offset, gire string por offset (gire da
esquerda para a direita).

115. Escreva um programa Java para verificar se um número positivo é um palíndromo ou não.
Insira um número inteiro positivo: 151
151 é um número palíndromo?
verdadeiro

116. Escreva um programa Java que itere os inteiros de 1 a 100. Para múltiplos de três imprima
"Fizz" em vez do número e imprima "Buzz" para os múltiplos de cinco. Quando o número for
dividido por três e cinco, imprima "fizz buzz".

117. Escreva um programa Java para calcular a raiz quadrada de um dado inteiro.
Insira um número inteiro positivo: 25
Raiz quadrada de 25 é: 5

118. Escreva um programa Java para obter a primeira ocorrência (a posição começa em 0.) de
uma string dentro de uma determinada string.

119. Escreva um programa Java para obter a primeira ocorrência (a posição começa em 0.) de
um elemento de um determinado array.

120. Escreva um programa Java que pesquise um valor em uma matriz m x n.

121. Escreva um programa Java para reverter uma determinada lista encadeada.
Exemplo: Para lista encadeada 20->40->60->80, a lista encadeada invertida é 80->60->40->20
122. Escreva um programa Java para encontrar um subarranjo contíguo com a maior soma de
um dado vetor de inteiros.
Nota: Em ciência da computação, o problema do subarray máximo é a tarefa de encontrar o
subarray contíguo dentro de um array unidimensional de números que tem a maior soma. Por
exemplo, para a sequência de valores −2, 1, −3, 4, −1, 2, 1, −5, 4; o subarray contíguo com a
maior soma é 4, −1, 2, 1, com soma 6. O subarray deve conter pelo menos um inteiro.
123. Escreva um programa Java para encontrar o subarranjo com a menor soma de um dado
vetor de inteiros.

124. Escreva um programa Java para encontrar o índice de um valor em um array ordenado.
Caso o valor não encontre retorne o índice onde estaria se fosse inserido em ordem.
Exemplo:
[1, 2, 4, 5, 6] 5(alvo) -> 3(índice)
[1, 2, 4, 5, 6] 0(alvo) -> 0(índice)
[1, 2, 4, 5, 6] 7(alvo) -> 5(índice)

125. Escreva um programa Java para obter o percurso de pré-ordem dos valores de seus nós de
uma determinada árvore binária.
Exemplo:
10
/\
20 30
/\
40 50
Produção esperada: 10 20 40 50 30

126. Escreva um programa Java para obter o percurso inordenado dos valores de seus nós de
uma determinada árvore binária.
10
/\
20 30
/\
40 50
Exemplo:{10, 20, 30, 40, 50}
Saída: 40 20 50 10 30

127. Escreva um programa Java para obter o percurso pós-ordem dos valores de seus nós de
uma determinada árvore binária.
10
/\
20 30
/\
40 50

128. Escreva um programa Java para calcular a mediana de um determinado array não
ordenado de inteiros.
Matriz original: [10, 2, 38, 22, 38, 23]
Mediana da referida matriz de inteiros: 30
Matriz original: [10, 2, 38, 23, 38, 23, 21]
Mediana da referida matriz de inteiros: 23

129. Escreva um programa Java para encontrar um número que apareça apenas uma vez em
um determinado array de inteiros, todos os números ocorrem duas vezes.
Source Array: [10, 20, 10, 20, 30, 40, 40, 30, 50] 50 aparece apenas uma vez

130. Escreva um programa Java para encontrar a profundidade máxima de uma determinada
árvore binária.
Saída de Amostra: A profundidade máxima da árvore binária é: 3

131. Escreva um programa Java para encontrar o novo comprimento de um determinado array
ordenado onde cada elemento aparece apenas uma vez (remova as duplicatas).
Matriz original: [1, 1, 2, 3, 3, 3, 4, 5, 6, 7, 7] O comprimento da matriz original é: 11 Após
remover duplicatas, o novo comprimento da matriz é: 7

132. Escreva um programa Java para encontrar o novo comprimento de um determinado array
classificado onde os elementos duplicados apareceram no máximo duas vezes.
Matriz original: [1, 1, 2, 3, 3, 3, 4, 5, 6, 7, 7, 7, 7]
O comprimento da matriz original é: 13
Depois de remover duplicatas, o novo comprimento da matriz é: 10

133. Escreva um programa Java para encontrar um caminho do canto superior esquerdo para o
inferior na direção direita que minimize a soma de todos os números ao longo de seu caminho.
Nota: Mova para baixo ou para a direita a qualquer momento.
Saída de Amostra: Soma de todos os números ao longo de seu caminho: 13

134. Escreva um programa Java para encontrar as diferentes maneiras de subir até o topo (n
degraus para chegar ao topo) das escadas. Cada vez que você pode subir 1 ou 2 degraus.
Exemplo: n = 5
a) 1+1+1+1+1 = 5 b) 1+1+1+2 = 5 c) 1+2+2 = 5 d) 2+2+1 = 5 e) 2+1+1+ 1 = 5 f) 2+1+2 = 5 g)
1+2+1+1 = 5 h) 1+1+2+1 = 5
Resultado da amostra: maneiras distintas de subir ao topo: 8

135. Escreva um programa Java para remover duplicatas de uma lista encadeada ordenada.
Lista original com elementos duplicados:
12->12->13->14->15->15->16->17->17
Depois de remover duplicatas da referida lista:
12->13->14->15->16->17

136. Escreva um programa Java para encontrar possíveis caminhos exclusivos do canto superior
esquerdo ao canto inferior direito de uma determinada grade (m x n).
Nota: Você pode mover para baixo ou para a direita a qualquer momento.
Saída de Amostra: Caminhos exclusivos do canto superior esquerdo ao canto inferior direito da
referida grade: 3

137. Escreva um programa Java para encontrar possíveis caminhos únicos considerando alguns
obstáculos, do canto superior esquerdo ao canto inferior direito de uma determinada grade (m
x n).
Nota: Você pode se mover para baixo ou para a direita a qualquer momento e um obstáculo e
um espaço vazio são marcados como 1 e 0, respectivamente, na grade.
Grade de amostra:
int[][] obstáculo_Grid ={
{0, 0, 0},
{0, 1, 0},
{0, 0, 0},
};
Saída de Amostra: Caminhos únicos do canto superior esquerdo ao canto inferior direito da
referida grade (considerando alguns obstáculos): 2

138. Escreva um programa Java para encontrar todas as palavras mais longas em um
determinado dicionário.
Exemplo 1:
{
"gato",
"bandeira",
"verde",
"país",
"w3resource"
}
Resultado: "w3resource"
Exemplo-2:
{
"gato",
"cão",
"vermelho",
"é",
"sou"
}
Resultado: "gato", "cachorro", "vermelho"

139. Escreva um programa Java para obter o índice do primeiro número e do último número de
um subarray onde a soma dos números é zero de um determinado array de inteiros.
Matriz original: [1, 2, 3, -6, 5, 4]
Índice do subarray do dito array onde a soma dos números é zero: [0, 3]
140. Escreva um programa Java para mesclar todos os intervalos sobrepostos de uma
determinada coleção de intervalos.
Saída de Amostra: 1 6
8 10
15 20

141. Escreva um programa Java para verificar se uma determinada string possui todos os
caracteres exclusivos.
Saída de Amostra: String Original: xyyz
A string tem todos os caracteres exclusivos: false

142. Escreva um programa Java para verificar se duas strings são anagramas ou não.
De acordo com a Wikipedia "Um anagrama é uma palavra ou frase formada pela reorganização
das letras de uma palavra ou frase diferente, normalmente usando todas as letras originais
exatamente uma vez. Por exemplo, a palavra anagrama pode ser reorganizada em nag a ram,
ou a palavra binária em inteligente."
Saída de amostra: String-1 : wxyz
String-2: zyxw
Verifique se duas strings fornecidas são anagramas ou não?: true

143. Escreva um programa Java para mesclar duas listas ordenadas dadas.
Saída de amostra:
Mesclar duas listas classificadasT:
1 2 3 7 9 13 40

144. Escreva um programa Java para remover todas as ocorrências de um valor especificado em
um determinado array de inteiros e retornar o novo comprimento do array.
Saída de amostra:
Matriz original: [1, 4, 6, 7, 6, 2]
O comprimento da nova matriz é: 4

145. Escreva um programa Java para remover o enésimo elemento do final de uma
determinada lista.
Saída de amostra:
Nó original:
12345
Depois de remover o 2º elemento do final:
1235

146. Escreva um programa Java para converter um array ordenado em uma árvore de busca
binária. Mantenha a altura mínima da árvore.
Saída de amostra:
2
1
4
6
5
3

147. Escreva um programa Java para encontrar o número de bits necessários para inverter para
converter dois inteiros dados.
Saída de amostra:
2

148. Escreva um programa Java para encontrar o índice do primeiro caractere exclusivo em
uma determinada string, supondo que haja pelo menos um caractere exclusivo na string.
Saída de amostra:
String Original: wresource
Primeiro caractere único do acima: 0

149. Escreva um programa Java para verificar se uma determinada string é uma permutação de
outra determinada string.
Saída de amostra:
Cordas originais: xxyz yxxx
verdadeiro

150. Escreva um programa Java para testar se uma árvore binária é uma subárvore de outra
árvore binária.
Saída de amostra:
Cordas originais: xxyz yxxx
verdadeiro

Você também pode gostar