Alle Beiträge von flashpixx
-
Verteilungsproblem
Doch das geht, denn Du kennst zu beginn die Anzahl an Elementen, nach Deiner Angabe max 2^25 Elemente, damit die die Menge endlich und Du kannst 2^25 / 3 Buckets damit anlegen. Zusätzlich sagst Du ja es dürfen maximal 4 Elemente pro Bucket sein, d.h. 0 <= x <= 4. Da Du beim maximalen Wert von 2^25 Elementen nur 1/3 an Buckets hast, kannst Du diese komplett füllen, ohne dass Du gegen Deine Vorgabe verstößt Natürlich ist die Frage des "wie befüllst Du die Buckets". Darüber hast Du nichts gesagt, d.h. ich würde naiv mit dem ersten Bucket beginnen und eben gleich verteilen, d.h. im maximalen Fall hast Du 3 Elemente pro Bucket, im minimalsten Fall entstehen leere Buckets. Oder soll es sich hier um ein Optimierungsproblem handeln wie z.B. Rucksackproblem ? Wikipedia ? Phil
-
Treemap
Dann mach es mit dynamischer Programmierung. Mal ganz grob der Algorithmus (es handelt sich um das Bellmann Prinzip, d.h. die Teillösungen, die Du ermittelst sind optimal, so dass die Gesamtlösung auch optimal ist - salopp formuliert): aktuelle Position (i,j) Zielposition (n,m) so lange (i,j) != (n,m) a = ||(i,j) - (i+1,j)|| b = ||(i,j) - (i-1,j)|| a = ||(i,j) - (i,j-1)|| b = ||(i,j) - (i,j+1)|| (i,j) = min(a,b,c,d) Du betrachtest immer nur die nächste Teillösung des Problems, d.h. der kürzeste Pfad ist von der aktuellen Position der Weg / das Element, das den kürzesten Abstand zum aktuellen Punkt hat. In diesem Fall müssen Dir sowohl Start und Ziel bekannt sein und Du musst darauf achten, dass keine Schleifen entstehen, weil dann die Schleife nicht terminiert. Wenn Du nur den kürzesten Pfad innerhalb Deiner Matrix benötigst, dann wirst Du nicht darum herum kommen alle Pfade zu durchlaufen. Das wird aber dann O(c*n*m), wobei Du das c geschickt klein halten kannst, in dem Du ähnlich wie im Algorithmus die Wege auswählst, d.h. Du betrachtest nur immer einen Weg der kürzer ist wie Dein aktueller Phil
-
Verteilungsproblem
Generell gelten ja die Landau-Symbole: Landau-Symbole ? Wikipedia aber da Du ja schon von Buckets redest: Bucketsort ? Wikipedia Du solltest auch noch überlegen, ob es sich hier _nur_ um den Formalismus handelt oder eine konkrete Implementierung, denn bei der konkreten Implementierung macht natürlich ein O(cn) für große bzw kleines c auch noch einen wirklichen Unterschied. Phil
- Treemap
-
Mit Windows XP über VPN auf Samba-Share zugreifen
VPN ist Routing, Samba Announcements werden per Broadcast übermittelt, beim Routen werden aber Broadcast generell nicht übertragen, somit kannst Du den Server nur durch direkte Eingabe der IP/Namens aufrufen. Alternative konfiguriere das Routing entsprechend um Phil
-
Ubuntu Einstieg
Ich würde da dann doch noch eher zu einem Gentoo raten. Installation muss man aus einem Minimalsystem und einem Tarball machen, Kernel wird nicht von Hause mit geliefert, sodass man selbst kompilieren muss. Alo der Bezug zum Code ist bei Gentoo im Gegensatz zu einer Binärdistribution höher. Wie aber Vic schon gesagt hat: Von Datenbank über Webserver kannst Du alles machen Phil
-
Server und Client nicht die Selbe Uhrzeit
Die Uhren synchronisieren, Network Time Protocol ? Wikipedia wäre wohl das passende Phil
-
Treemap
Hallo, wenn Du vielleicht das Problem einmal etwas umfangreicher beschreiben würdest, dann könnte man durch einen anderen Algorithmus evtl das Problem optimieren z.B. wenn Du "kürzeste Pfade" benötigst usw. Hierzu wären z.B. Graphenalgorithmen oder auch dynamische Programmierung (Bellman Prinzip) mögliche Ansätze Phil
-
verständnissfrage
Generell solltest Du bei Verständnisfragen immer denjenigen fragen, der die Aufgabe stellt. Aber Du sollst in der Combobox "Name", "Vorname" usw auswählen können und in einem Textfeld dann eben den zusuchenden Namen eingeben. Ich denke der zweite Teil ist klar formuliert Phil
-
ThreadPools und Queues
Ich will einmal zu bedenken geben, wirklich gut über die "Parallelisierung" nachzudenken. Nur weil es parallel verarbeitet wird, ist es nicht schneller. Um eine gute Parallelisierung zu erreichen, solltest Du Dein Problem zunächst wirklich umfassend analysieren, denn z.B. wenn Du irgendwo einen Datenaustausch (Mutex) zwischen zwei Tasks hast, kann Dir das unter Umständen jeden Performancegewinn wieder zu nichte machen Phil
-
[php] Zip/unzip für Plugin-Dateien
ich dachte schon, denn das wäre oversized Da würde ich eine fertige Komponente nehmen und mir einfach die Dateiliste zurück geben lassen Phil
-
[php] Zip/unzip für Plugin-Dateien
Du hast den Zip Algorithmus http://de.wikipedia.org/wiki/ZIP_(Dateiformat) selbst programmiert? Phil
-
[php] Zip/unzip für Plugin-Dateien
Da Du nicht schreibst was Du überhaupt verwendest ist es schwer zu helfen. Die zwei Zip Systeme die mir direkt einfallen wären: File_Archive PHP: Zip - Manual Aber es ist immer hilfreich, wenn Du Code und Fehlermeldungen postest Phil
-
Dateien speichern
Wenn man dann elegant machen will, würde ich zu Jaxb raten, denn dann hat man mit der eigentlichen XML Repräsentation nicht viel zu tun und die XML Dateien sind immer direkt der Definition entsprechend Phil
-
2 abfragewerte
Ich rate gerade dabei zu PrepareStatements. Es erleichtert die genaue Typenzuordnung. Operatoren in Java Ich möchte Dir aber noch zu Deinem Datenmodell sagen, dass Du dieses ggf einmal überdenken solltest, denn man würde Vornamen und Nachmen trennen, damit auch Teilsuchen möglich sind Phil
-
Dateien speichern
Ich habe nichts gegenteiliges gesagt: siehe dazu ggf: SQL ? Wikipedia Java Database Connectivity ? Wikipedia SQLite ? Wikipedia Phil
-
2 abfragewerte
Bitte schreibe genau was Du meinst! Wo hast Du die beiden Felder in der Datenbanktabelle oder in Deinem Programm. Aufgrund des Codes würde ich auf das Programm tippen, dann musst Du einfach beide Strings konkatenieren (siehe dazu die Operatoren in Java). Wenn Du es genau anders brauchst, d.h. Du hast ein Feld in Deinem Programm aber zwei in der Datenbank, nimm einen Tokenizer um Deinen String zu trennen Ich rate Dir bei SQL ganz dringend zu PrepareStatements. Phil
-
Dateien speichern
Generell solltest Du Dir die Outputstreams anschauen, wenn Du es dateibasiert machen möchtest. Ich würde aber eher zu SQL Lite raten, da Du einfach bequemer mit einer Datenbank arbeiten kannst. Da SQL Lite dateibasiert arbeitet hast Du eben wieder Deine Dateien Phil
-
in runable jar umwandeln
DU musst eine Manifest.mf (Textdatei) erstellen darin die Klasse, die die main-Methode enthält angeben und dann mit "jar" aus den Klassen und der Manifest Deine Jar bauen Grundlagen zu Jar stehen im Wiki Artikel Java Archive ? Wikipedia Es ist eigentlich recht einfach, es ist nur zu beachten dass bei der Manifest-Datei am Schluss eine Leerzeile eingefügt werden muss. Ansonsten ist das wirklich schnell gemacht Ohne Garantie jar -c <Name der Jar> <Name der Manifest> <Klasse und Pfade z.B. myproject/*.class> Phil
-
BlueJ - Hilfe für Projekt
Also ich weiß nicht, Dein Programm soll ja nur was ausrechnen. Wenn ich Dir jetzt einfach den Tipp gebe, dass Du das ganze ohne BlueJ und GUI machst, dann hast Du auch recht schnell wirklich Java drauf: public meineKlasse { public static void main(String[] args) { } } wäre der Rumpf mit dem Du anfängst. Für jede Klasse legst Du eben eine neue Datei mit einem Namen an und in der main-Methode beginnt Dein Programm. Als Online-Buch kann man das empfehlen Galileo Computing :: Java ist auch eine Insel (8. Auflage) Technisch würdest Du mit einer Klasse auskommen, d.h. Du würdest in die Main-Methode alles rein programmieren, ist zwar unschön, aber für einen Anfänger okay Phil
-
BlueJ - Hilfe für Projekt
Es gibt dafür nichts fertiges, Du musst Dir eben selbst die passenden Klassen mit den Inhalten erstellen, d.h. Dein Problem musst Du in einzelne Teile zerlegen und Dir überlegen wie Du das dann sinnvoll in Klassen umsetzt und diese dann entsprechend programmieren. Eine Einführung in BlueJ findest Du hier BlueJ-Lehrgang von Ulrich Helmich, Inhalt BlueJ basiert letztendlich auf Java, d.h. Du kannst einen beliebigen Tastendruck verarbeiten (How to Write a Key Listener (The Javaâ„¢ Tutorials > Creating a GUI with JFC/Swing > Writing Event Listeners)). Inwieweit BlueJ so etwas ggf schon implementiert hat, müsstest Du der Doku entnehmen. Phil
-
ThreadPools und Queues
evtl schaust Du Dir das mal an ThreadGroup (Java 2 Platform SE v1.4.2) Aber was mich im Moment stört, dass Du immer 5 aktive Tasks haben willst und diese als Gruppe betrachteten möchtest. Mir ist der Zweck davon nicht klar. Warum 5 und nicht 10 oder 2. Vielleicht beschreibst Du mal die Problemstellung, damit evtl darüber nachdenken kann Phil
-
Probleme beim Befüllen der MySQL DB
Es gibt eine Quote-Funktion! zu SSH: Secure Shell ? Wikipedia zu mySQL-Befehl: mysql(1): MySQL tool - Linux man page PHPMyAdmin ist ein webbasiertes Tool, mySQL bringt entsprechend Konsolenprogramme mit über die man auch arbeiten kann und genau diese sollst Du verwenden. Phil
-
BlueJ - Hilfe für Projekt
Wo ist denn jetzt genau das Problem? Versuche mal Dein Problem präzise aufzuschreiben Phil
-
Probleme beim Befüllen der MySQL DB
Mach das ganze mal bitte als eine Datei und importiere es per Konsolenbefehl. Was tritt dann für eine Meldung auf Phil