[JAVA] Medianwert von drei Werten

Beispiel, wie der Medianwert von drei Werten mit Java ermittelt wird

Ich habe kürzlich angefangen, "In Java gelernte Algorithmen und Datenstrukturen" zu lesen und eine Übung gelöst, um den Median von drei Werten zu finden. Ich werde es aufschreiben, weil es später nützlich zu sein scheint.

	public static void main(String[] args) {
		System.out.println(med3(3, 2, 1)); // [A] a > b > c
		System.out.println(med3(3, 2, 2)); // [B] a > b = c
		System.out.println(med3(3, 1, 2)); // [C] a > c > b
		System.out.println(med3(3, 2, 3)); // [D] a = c > b
		System.out.println(med3(2, 1, 3)); // [E] c > a > b
		System.out.println(med3(3, 3, 2)); // [F] a = b > c
		System.out.println(med3(3, 3, 3)); // [G] a = b = c
		System.out.println(med3(2, 2, 3)); // [H] c > a = b
		System.out.println(med3(2, 3, 1)); // [I] b > a > c
		System.out.println(med3(2, 3, 2)); // [J] b > a = c
		System.out.println(med3(1, 3, 2)); // [K] b > c > a
		System.out.println(med3(2, 3, 3)); // [L] b = c > a
		System.out.println(med3(1, 2, 3)); // [M] c > b > a

	}

	private static int med3(int a, int b, int c) {
		if (a >= b) {
			if (b >= c) {
				return b; // A, B, F, G
			} else if (a <= c) {
				return a; // D, E, H
			} else {
				return c; // C
			}
		} else if (a > c) {
			return a; // I
		} else if (b > c) {
			return c; // J, K
		} else {
			return b; // L, M
		}
	}

Es gibt 13 Muster in der Größenbeziehung der drei Werte, also habe ich jedes Muster genannt.

Ich denke, es gibt viele andere Möglichkeiten, den Medianwert zu ermitteln. Bitte beziehen Sie sich auf ihn als Beispiel.

Recommended Posts

Medianwert von drei Werten
Die Welt der Clara-Regeln (2)
Beurteilung des Kalenders
Die Welt der Clara-Regeln (4)
Die Welt der Clara-Regeln (1)
Die Welt der Clara-Regeln (3)
Die Welt der Clara-Regeln (5)
Die Idee der schnellen Sortierung
[Java] Drei Funktionen von Java
Die Idee von jQuery
Über den Umgang mit Null
Docker-Überwachung - Erläuterung der Grundlagen der Grundlagen
Informationen zur Beschreibung von Docker-compose.yml
Das Spiel der Instanziierung von java.lang.Void
Die Illusion der Objektorientierung
Zusammenfassung der von der Spliterator-Merkmalsmethode #java zurückgegebenen Werte
Drei Gründe für Frustration vor der Veröffentlichung von Web Services
Über das Verhalten von Ruby Hash # ==
[Java] Löschen Sie die Elemente von List
Fortsetzung: Das Gleichnis von OOP (weggelassen)
Ändern Sie nur einen Teil des Textes
Verstehen Sie den grundlegenden Mechanismus von log4j2.xml
Über die Grundlagen der Android-Entwicklung
'% 02d' Was ist der% von% 2?
[Schienen] Überprüfen Sie den Inhalt des Objekts
Ersetzen Sie den Inhalt der Jar-Datei
[Java Edition] Geschichte der Serialisierung
Die Grundlagen von SpringBoot + MyBatis + MySQL
Hinweis zum Pfad von request.getRequestDispatcher
Ich habe die Quelle von Integer gelesen
Dies und das von JDK
Überprüfen Sie den Migrationsstatus von Schienen
Die Geschichte von @ViewScoped, die Speicher verschlingt
Filtern Sie die Schwankungen der Rohdaten
Erklären der Spalten von Spree :: Taxonomy
Ein Memorandum über das FizzBuzz-Problem
Ich habe die Quelle von Long gelesen
Erklären Sie die Spalte von Spree :: Product
Verschiedene Methoden der String-Klasse
Informationen zur Rolle der Initialisierungsmethode
Denken Sie an die 7 Regeln von Optional
Holen Sie sich die ID der automatischen Nummerierung
Ich habe die Quelle von Short gelesen
Ich habe die Quelle von Byte gelesen
Reihenfolge der Verarbeitung im Programm
Ich habe die Quelle von String gelesen
Der Ursprung von Java-Lambda-Ausdrücken
[Ruby] Zeigt den Inhalt von Variablen an
Filtern Sie das Ergebnis von BindingResult [Spring]
Remote-Debugging von Cognos SDK
Informationen zur Protokollebene von java.util.logging.Logger
So geben Sie die Summe von drei beliebigen Zahlen ohne denselben Wert aus