Als «algorithms» getaggte Fragen

Ein Algorithmus ist eine Folge genau definierter Schritte, die eine abstrakte Lösung für ein Problem definieren. Verwenden Sie dieses Tag, wenn Ihr Problem mit dem Entwurf und der Analyse von Algorithmen zusammenhängt.

5
Interessante Anagramme finden
, und sind zwei Zeichenfolgen gleicher Länge. Eine Darstellung von zwei Zeichenfolgen ist eine bijektive Abbildung von so dass für jedes .b 1 b 2 … b na1a2…ana1a2…ana_1a_2\ldots a_nb1b2…bnb1b2…bnb_1b_2\ldots b_na i = b p ( i ) ip:[1…n]→[1…n]p:[1…n]→[1…n]p:[1\ldots n]\to[1\ldots n]ai=bp(i)ai=bp(i)a_i = b_{p(i)}iii Es kann mehr als ein Diagramm für dasselbe …

2
Simulation einer Wahrscheinlichkeit von 1 von 2 ^ N mit weniger als N Zufallsbits
Angenommen, ich muss die folgende diskrete Verteilung simulieren: P(X=k)={12N,1−12N,if k=1if k=0P(X=k)={12N,if k=11−12N,if k=0 P(X = k) = \begin{cases} \frac{1}{2^N}, & \text{if $k = 1$} \\ 1 - \frac{1}{2^N}, & \text{if $k = 0$} \end{cases} Der naheliegendste Weg ist, zufällige Bits zu zeichnen und zu prüfen, ob alle gleich (oder ) …



1
Hash-Tabellen versus binäre Bäume
Bei der Implementierung eines Wörterbuchs ("Ich möchte Kundendaten anhand ihrer Kunden-IDs nachschlagen") werden typischerweise Hash-Tabellen und binäre Suchbäume verwendet. Ich weiß zum Beispiel, dass die C ++ STL-Bibliothek Wörterbücher (sie nennen sie Maps) mithilfe von (ausgeglichenen) binären Suchbäumen implementiert und das .NET-Framework Hash-Tabellen unter der Haube verwendet. Was sind die …

7
Unterschiede und Beziehungen zwischen randomisierten und nicht deterministischen Algorithmen?
Welche Unterschiede und Beziehungen bestehen zwischen randomisierten und nicht deterministischen Algorithmen? Aus Wikipedia Ein randomisierter Algorithmus ist ein Algorithmus, der einen Zufallsgrad als Teil seiner Logik verwendet. Der Algorithmus verwendet typischerweise gleichmäßig zufällige Bits als Hilfseingabe, um sein Verhalten zu steuern, in der Hoffnung, im "Durchschnittsfall" eine gute Leistung über …

4
Zählen Sie alle nicht-isomorphen Graphen einer bestimmten Größe auf
Ich möchte alle ungerichteten Graphen der Größe auflisten nnn, benötige aber nur eine Instanz jeder Isomorphismusklasse . Mit anderen Worten, ich möchte alle nicht-isomorphen (ungerichteten) Graphen auf Eckpunkten aufzählen . Wie kann ich das machen?nnn Genauer gesagt, ich möchte einen Algorithmus, der eine Folge ungerichteter Graphen mit der folgenden Eigenschaft …


1
Wie schwer ist es, die Anzahl einfacher Pfade zwischen zwei Knoten in einem gerichteten Graphen zu zählen?
Mit einem einfachen Polynomalgorithmus kann entschieden werden, ob in einem gerichteten Graphen ein Pfad zwischen zwei Knoten vorhanden ist. Es scheint jedoch überraschenderweise, dass das Problem viel schwieriger wird, wenn wir anstatt auf die Existenz zu testen, die Anzahl der Pfade zählen möchten . Wenn wir zulassen, dass Pfade Eckpunkte …

4
Wie bestimme ich wahrscheinliche Verbindungen in einem sozialen Netzwerk?
Ich bin neugierig darauf, einen Ansatz zu finden, um einen "vorgeschlagenen Freund" -Algorithmus in Angriff zu nehmen. Facebook hat eine Funktion, mit der es Ihnen Personen empfiehlt, mit denen Sie möglicherweise vertraut sind. Diese Benutzer haben normalerweise (mit Ausnahme der Randfälle, in denen ein Benutzer einen Freund ausdrücklich empfiehlt ) …



2
Warum ist der leere Typ von C nicht analog zum leeren / unteren Typ?
Wikipedia und andere Quellen, die ich gefunden habe, listen den voidTyp C als Einheitentyp und nicht als leeren Typ auf. Ich finde das verwirrend, da es mir so scheint, als ob es voidbesser zur Definition eines Leer- / Bodentyps passt. voidSoweit ich das beurteilen kann, gibt es keine Werte . …
28 type-theory  c  logic  modal-logic  coq  equality  coinduction  artificial-intelligence  computer-architecture  compilers  asymptotics  formal-languages  asymptotics  landau-notation  asymptotics  turing-machines  optimization  decision-problem  rice-theorem  algorithms  arithmetic  floating-point  automata  finite-automata  data-structures  search-trees  balanced-search-trees  complexity-theory  asymptotics  amortized-analysis  complexity-theory  graphs  np-complete  reductions  np-hard  algorithms  string-metrics  computability  artificial-intelligence  halting-problem  turing-machines  computation-models  graph-theory  terminology  complexity-theory  decision-problem  polynomial-time  algorithms  algorithm-analysis  optimization  runtime-analysis  loops  turing-machines  computation-models  recurrence-relation  master-theorem  complexity-theory  asymptotics  parallel-computing  landau-notation  terminology  optimization  decision-problem  complexity-theory  polynomial-time  counting  coding-theory  permutations  encoding-scheme  error-correcting-codes  machine-learning  natural-language-processing  algorithms  graphs  social-networks  network-analysis  relational-algebra  constraint-satisfaction  polymorphisms  algorithms  graphs  trees 

3
Warum wird die Auswahl schneller sortiert als die Blasensortierung?
Auf Wikipedia steht : "... Selektionssortierung übertrifft fast immer Blasensortierung und Gnomensortierung." Kann mir bitte jemand erklären, warum Auswahlsortierung als schneller als Blasensortierung angesehen wird, obwohl beide haben: Zeitliche Komplexität im schlimmsten Fall :O(n2)O(n2)\mathcal O(n^2) Anzahl der Vergleiche : O(n2)O(n2)\mathcal O(n^2) Beste Fallzeitkomplexität : Blasensortierung:O(n)O(n)\mathcal O(n) Auswahlsortierung:O(n2)O(n2)\mathcal O(n^2) Durchschnittliche Fallzeitkomplexität …


Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.