Ok, da musst du dann einfach in deiner Hashfunktion dann den M-Parameter verändern, alle Elemente von der alten Liste auslesen und in die neue einfügen (dabei solltest du M logischerweise nicht nur um 1 erhöhen).
Beiträge von hal
-
-
Eine Hashtable wird nie größer, außer du wechselst mittendrin deine Hashfunktion (was sehr dumm wäre).
Du brauchst einfach ein Array mit Größe M, und jeder Eintrag davon beinhaltet eine verkettete Liste (die hat schon eine dynamische Größe).zB
-
In C mit sizeof die Größe eines Arrays herausfinden funktioniert nur, wenn es am stack alloziert ist, und nur in der Funktion in der es erzeugt wurde. In genau den Fällen nimmt man aber normalerweise eher eine Konstante, zB:
Code#define ITEMCOUNT 4711 void fkt() { int array[ITEMCOUNT]; for(unsigned i = 0; i < ITEMCOUNT; i++) { array[i] = i; } }
Für den Normalfall gibt es einfach keine Möglichkeit. Das ist der Grund, warum strings in C einen '\0'-Character am Ende haben (strlen() tut nichts anders als das array bis zum ersten \0 durchzulaufen und mitzuzaehlen), und du bei fast allen Funktionen die ein nicht-string-array übergeben bekommen die Größe als extra Parameter mitangeben musst (siehe zB argc bei der main-Funktion).
-
Grade das Informatikstudium ist ein sehr soziales, oder kann irgendwer hier behaupten, Mathe1/2 komplett allein in seinem dunklen Kämmerchen gemacht zu haben?
Im SE-Bak lernt man auch, was es mit einem richtig geplanten Softwareprojekt auf sich hat, und wie das organisiert werden kann. Sowas fehlt eigentlich allen, die Programmieren nur von daheim oder der Schule kennen.
-
Spieleprogrammierer ist ein Hardcore-Job, dazu musst du C++ im Schlaf können, mit 3D-Programmierung, Animation, Physik, Audio, AI, etc. Mehr Info: http://en.wikipedia.org/wiki/Game_programmer
Das hat nicht viel mit dem Schreiben von Game Scripts zu tun (außer dass du vielleicht den Compiler dafür schreibst). Das was du meinst, ist vermutlich Level Designer. -
Hab ich auch nicht bezweifelt, ich mein dass man von zb osx aus nicht auf ntfs schreiben kann
Kann man schon, mithilfe von MacFUSE. Das ist aber garantiert nicht der Verdienst von Microsoft.
ZitatIch kenn den kris der den Maa kurs macht und wir haben das problem gemeinsam diskutiert. Ich verwende ein macbook, er verwendet ein altes powerbook. Ist ein grosser unterschied. Umso ärgerlicher dass auf den NEUEN! macbooks bugs auftauchen. Der übeltäter ist übrigends schon bekannt. intel gma 950
Na gut, du leistest dir eine zig tausend Euro Software, und dann bist dir zu schad, €2000 für einen tragbaren Computer mit einer nennenswerten Grafikkarte auszugeben??? Mich würds nicht wundern, wenn die das nichtmal auf so einem Ding getestet haben, weil sie nicht mal in Betracht gezogen haben, dass das jemand versucht.
Also das "schlecht reden" ist ja nun bei weitem nicht auf die TU beschraenkt.
Gegen das, was auf slashdot abläuft, ist das auf der TU eine Lappalie
ZitatBetreibsysteme sind ja heute lange nicht mehr so wichtig wie noch
in den 90ern, und ich finde auch das man mit Windows durchaus
produktiv arbeiten, zumindest wenn man es sich
entwicklerfreundlich herrichtet (hallo cygwin).Jo, cygwin ist immer das erste, das ich auf einem Windows-Rechner installiere, auf dem ich längerfristig arbeiten soll. Versteh nicht, wie man mit so einer total krank verkrüppelten Kommandozeile wie cmd.exe auskommen soll. Monad ist ja auch wieder vertagt worden für Vista...
-
Was ist nicht kompatibel?? Ok, NTFS ist nicht schreibbar, diese Firmenpolitik versteh ich auch nicht.
hä? NTFS ist sehrwohl schreibbar unter Windows.
ZitatIch habe aber auch nicht die kompatibilität zu anderen OS gemeint, obwohl die meiner meinung nach befriedigend gegeben ist (verwende osx, ubuntu und xp und hab eigentlich noch keine probleme gehabt)
Das liegt daran, dass sich für jeden MS-de facto standard ein oder mehrere Open Source-Entwickler hinsetzen und den nachprogrammieren. Microsoft selber verwendet keine Standards, die jemand anderer entwickelt hat, außer sie werden dazu gezwungen (siehe IP und OpenGL).
ZitatIch meinte mit "kompatibel" Hardware und teilweise auch software (zb Maya 8.5 ist so verbugt am mac dass ich es nicht verwenden kann)
hmmm im Maya-Kurs vom CG-Institut hat der Kursleiter gemeint, dass Maya am Mac viel problemloser läuft als unter Windows, weils da keine Grafikkartentreiberprobleme gibt, er verwendet auch selber einen Mac für den Kurs. Der ist Modeldesigner in einer Firma. Wem soll ich jetzt glauben?
ZitatMeine externe Festplatte wird läuft total instabil unter linux und osx, keine probleme unter windows.
Weil der Controller nur unter Windows getestet wurde (ja, das macht einen Unterschied.
ZitatMein Monitor funktioniert super unter Windows, unter Mac OSX flackert er
Refresh rate falsch eingestellt?
Zitatunter Linux kann ich die Aufläsung nicht nutzt
Linux unterstützt Grafikkarten???
ZitatWIndows aufsetzten: 3h Arbeit investieren, alles läuft perfekt
incl. den 50 critical security updates (die einzeln mit Neustarts dazwischen installiert werden müssen) und Virenscanner eingerechnet?
ZitatMac aufsetzten: 1,5h arbeit investieren, alles läuft perfekt
Najo, nicht sehr flott, aber realistisch.
ZitatUbuntu: Ist jetzt 3 WOchen her und es funktioniert noch immer nicht so wie ich es will.
Mein Gentoo-Router war in nur einer Woche fix fertig eingerichtet, und rennt seitdem tadellos...
ZitatSchon klar dass ein erfahrener Unix User das System in kurzer Zeit zum Laufen bringt dass man super damit arbeiten kann. Aber darum geht es nicht. Und solange das nicht alles Deppensicher (bsp osx, noch nie damit gearbeitet, sofort damit zurechtgekommen) ist ist es einfach nur nervig und wird sich nie durchsetzten.
Najo, was glaubst warum ich Mac OS X für alles verwende, wo man eine Grafikkarte braucht?
-
Windows ist und bleibt dass kompatibelste und dadurch weit verbreitetste OS, und das wohl ziemlich sicher auch in Zukunft.
Du verdrehst da was. Windows ist das einzige aktuelle OS, das nicht kompatibel zu irgendwas anderem ist.
Es ist nur kompatibel zu einem Großteil der Desktops, weil es auf genau diesen Desktops läuft, das ist keine Kunst.
Und genau das ist auch der Grund, warum Windows-Programmierung die n00bs anzieht. Das heißt nicht, dass es nicht auch fähige Windows-Programmierer gibt, aber du wirst wesentlich weniger unfähige UNIX-Programmierer als ebensolche Windows-Programmierer finden (auch anteilsmäßig). -
Naja, aber grade die Posten, die wir als Uni-Absolventen (wenn wir mal welche werden) einnehmen werden, sind wohl eher auf einem höheren Niveau, und da kann ich mir gut vorstellen, dass UNIX/Linux-Jobs weiter verbreitet sind. Windows-Programmierer kannst im Hunderterpack beim Billa kaufen.
-
"Ich mach nur meinen Job" hat bei den Nürnberger Prozessen auch nicht funktioniert. Man ist immer für das verantwortlich, das man tut.
-
Klingt fast nach MAC-Konflikt, aber das hätten die Computer ja gemeldet...
-
Ja, man definiert dann als Sprache Englisch, und den Rest soll der technische Architekt machen *g*.
Klar, wenn du ein Team aus 100 Leuten hast, hast du dann auch so Leute wie Architekten, Tester, Dokumentationsschreiber, Analysten, Teamleiter, etc etc etc. So etwas wird dir aber nicht so bald zufallen nach der Uni, deswegen musst du als Projektleiter alle diese Aufgaben übernehmen.
-
keine. programmieren kann man sich auch selber beibringen.
Falsch, Programmieren muss man sich selber beibringen. Jeder der glaubt, er würde in einem Kurs oder im Unterricht programmieren vom Lehrer im Frontalunterricht beigebracht werden, ist immer noch bitter enttäuscht worden.
Programmieren kann man nur lernen, indem man sich mit einem guten Buch (analog oder digital) hinsetzt und herumprogrammiert. Wenn sich da Probleme auftun, kann man immer noch jemanden fragen.
Ach ja, und man kann nicht früh genug damit anfangen. Am besten gleich wenn man lesen und schreiben gelernt hat, da fällts einem noch am Einfachsten.
-
ich wurde noch nie gezwungen einen flyer zu nehmen.
Ja, ein Schlag ins Gesicht reicht und die wollen dir gar keinen Flyer mehr geben :devil: -
Naja, wenn man Projektleiter ist, kann man sich die Sprache aussuchen
-
Er sagt eh, warums nicht geht:
Codetest.java:6: constant expression required case abc[0]: ^ test.java:8: constant expression required case abc[1]: ^ test.java:10: constant expression required case abc[2]: ^
Anscheinend muss der Wert da konstant sein.
Da hilft wohl nur viele ifs oder eine Schleife mit einem if. -
Daß es außer den paar angesprochenen Sprachen noch welche gibt, die nicht sucken, ist mir schon klar. Stellenanzeigen für Objective-C-Developer springen mir aber jetzt auch nicht gerade häufig ins Auge
Nachdem Entwicklung in Mac OS X fast ausschließlich auf Objective C passiert, gibt es da mehr als du glaubst
Du solltest die Stellenausschreibungen nicht für bare Münze nehmen. Ich hab schon so einige Bewerbungsgespräche geführt und die Erfahrung gemacht, dass die geforderten Skills im Ausschreibungstext die absoluten Mindestanforderungen sind.
Naja, sind auch oft komplett übertrieben, wo die Firmen alles reinschreiben, von dem sie jemals gehört haben (so kommen auch so Dinge wie "20 Jahre Berufserfahrung mit C#" zustande).
ZitatDamit möchte ich sagen, wenn z.B. "Wollen unser Team erweitern. Suchen C++ Programmierer, bla, bla, bla" - heißt das nichts weiter, dass sie jemanden suchen, dem sie am ersten Tag einen Arbeitsplatz mit einer x-beliebigen C++ IDE geben können und dieser nach einem Vormittag Spielerei mit der IDE zum coden beginnen kann...
Wenn man nach einem Vormittag schon Codezeilen ausspucken soll stell ich allerdings das Projektmanagement in Frage, weil in ein existierendes Projekt einsteigen dauert allein sicher länger. Wenn alle Leute einfach nur drauflos programmieren, entsteht da nur Chaos.
-
Ich denke das Hauptproblem ist, dass wenn man in einem Programmierteam arbeitet (und das tut man in 99% der Fälle), ja alle Programmierer diese Programmiersprache können müssen. Grade bei so eher unbekannten Sprachen wie Smalltalk ist das garantiert nicht der Fall, und viele Arbeitgeber wollen den Leuten auch keine Woche bezahlen, damit sie sich die Sprache vorher anschauen können (und danach immer noch schlechter zu sein damit als erfahrene Programmierer).
Das Problem ist besonders groß, wenn Software Engineerler mit nicht-Akademikern im Team sind, weil dann die "obergscheiten Akademiker immer alles besser wissen" (diese Stimmung bekomm ich bei meinen ex-Schulkollegen sehr gut mit, die direkt nach der Schule in Firmen gegangen sind, wo auch Akademiker arbeiten). Da leidet gleich mal die Stimmung sehr, wenn man von den altbekannten Wegen abgleitet.
Bez. Smalltalk selbst: Schau dir mal Objective C an. Das bringt viele Vorteile von Smalltalk mit (nicht alle allerdings) und hat noch zusätzlich den Vorteil, 100% mit C kompatibel zu sein (jeder C-Source ist auch ein Objective C-Source, und man kann C-libraries ohne irgendwelchen bridge code verwenden).
Bez. Ruby und Python: Viele Webprojekte werden jetzt mit diesen Sprachen gemacht, da brauchts nichtmal Überzeugungskraft Wobei da die husch-pfusch-Sprache php immer noch extrem dominiert.
Ah ja und noch was: Manchmal ist man dazu verleitet, mehrere Programmiersprachen in ein Projekt zu integrieren. Dumme Idee! Das hab ich schon mehrfach probiert, und bin damit immer eingefahren.
Die einzige Ausnahme dazu ist C++/lua mit dem tolua++-Tool, da funktioniert das wirklich einwandfrei, aber ich würde lua nicht für Kernbestandteile des Programms verwenden, die Sprache ist als Skriptsprache für Spielelogik und ähnliches gedacht. -
eBay? Da wern die Karten ständig verscherbelt.
-
Ich hab vom Zoll gesprochen.