Articles of Algorithmus

Schreiben Sie Ihre eigene Quadratwurzelfunktion

Wie schreiben Sie Ihre eigene function, um die genaueste Quadratwurzel einer ganzen Zahl zu finden? Nachdem ich gegoogelt habe, fand ich das (archiviert von seinem ursprünglichen Link ), aber zuerst habe ich es nicht vollständig verstanden, und zweitens ist es auch ungefähr. Nehmen Sie die Quadratwurzel als nächste Ganzzahl (zum eigentlichen Stamm) oder als Gleitkommazahl […]

Welche Verteilung erhalten Sie von diesem gebrochenen zufälligen Shuffle?

Der berühmte Fisher-Yates Shuffle–Algorithmus kann verwendet werden, um ein Array A der Länge N zufällig zu permutieren: For k = 1 to N Pick a random integer j from k to N Swap A[k] and A[j] Ein häufiger Fehler, den mir immer wieder gesagt wurde: For k = 1 to N Pick a random integer […]

Mit welchem ​​Algorithmus können Rechtecke unterschiedlicher Größe möglichst optimal in das kleinste Rechteck verpackt werden?

Ich habe ein paar rechteckige Objekte, die ich auf den kleinstmöglichen Raum packen muss (die Dimensionen dieses Raums sollten Zweierpotenzen sein). Ich kenne verschiedene Packalgorithmen, die die Objekte so gut wie möglich in einen bestimmten Raum packen, aber in diesem Fall brauche ich den Algorithmus, um herauszufinden, wie groß dieser Raum auch sein sollte. ZB […]

Generiere alle binären Strings der Länge n mit gesetzten k Bits

Was ist der beste Algorithmus, um alle binären Strings der Länge n zu finden, die k Bits enthalten? Zum Beispiel, wenn n = 4 und k = 3, gibt es … 0111 1011 1101 1110 Ich brauche einen guten Weg, um diese zu erzeugen, vorausgesetzt, es gibt ein beliebiges n und ein beliebiges k, also […]

Was ist der effiziente Weg, um gesetzte Bits an einer Position oder niedriger zu zählen?

Gegebene std::bitset bits mit einer beliebigen Anzahl von gesetzten Bits und einer Bitposition X (0-63) Was ist der effizienteste Weg, um Bits an Position X oder niedriger zu zählen oder 0 zurückzugeben, wenn das Bit an X nicht gesetzt ist Hinweis: Wenn das Bit gesetzt ist, ist die Rückkehr immer mindestens 1 Der brutale Weg […]

Finde eine ganze Zahl, die nicht unter vier Milliarden ist

Es ist eine Interviewfrage: Geben Sie bei einer Eingabedatei mit vier Milliarden Ganzzahlen einen Algorithmus zum Generieren einer Ganzzahl an, der nicht in der Datei enthalten ist. Angenommen, Sie haben 1 GB Speicher. Folgen Sie dem, was Sie tun würden, wenn Sie nur 10 MB Speicher haben. Meine Analyse: Die Größe der Datei beträgt 4 […]

Wie überprüfe ich, ob eine Nummer ein Palindrom ist?

Wie überprüfe ich, ob eine Nummer ein Palindrom ist? Jede Sprache. Jeder Algorithmus. (außer dem Algorithmus, die Zahl zu einer Zeichenkette zu machen und dann die Zeichenkette umzukehren).

Wo finde ich eine Standard-basierte Kartenimplementierung in Java?

Ich habe ein Java-Programm, das viele Zuordnungen von Strings zu verschiedenen Objekten speichert. Im Moment sind meine Optionen entweder Hashing (via HashMap) oder Binärsuche (via TreeMap). Ich frage mich, ob es eine effiziente und standardmäßige trie-basierte Kartenimplementierung in einer beliebten und hochwertigen Bibliothek gibt. Ich habe in der Vergangenheit meine eigene geschrieben, aber ich würde […]

Was wäre die schnellste Methode, um auf Primalität in Java zu testen?

Ich versuche den schnellsten Weg zu finden, um zu überprüfen, ob eine gegebene Zahl prim ist oder nicht (in Java). Im Folgenden sind einige Primzahltestmethoden aufgeführt, die ich entwickelt habe. Gibt es einen besseren Weg als die zweite Implementierung (isPrime2)? public class Prime { public static boolean isPrime1(int n) { if (n <= 1) { […]

Algorithmus für additive Farbmischung für RGB-Werte

Ich suche nach einem Algorithmus für additive Farbmischung für RGB-Werte. Ist es so einfach wie das Hinzufügen der RGB-Werte zu einem Maximum von 256? (r1, g1, b1) + (r2, g2, b2) = (min(r1+r2, 256), min(g1+g2, 256), min(b1+b2, 256))