Logo

Sortierverfahren in Java – Quicksort, Mergesort und Bubblesort

Verfasst von: xed am 5 - Mai - 2012 - Kategorisiert unter: Dev -

Wie bereits vor einiger Zeit angekündigt, wollte ich ja noch drei bekannte Sortierverfahren in Java durchgehen. Grund dafür war das benötigte sortierte Array für die binäre Suche. Ich fange daher einfach mal mit dem sog. Bubblesort an.

Bubblesort
Das ganze System hinter Bubblesort ist schnell erklärt: Im Grunde werden immer zwei Werte verglichen (“gebubbled”) und dann ggf. getauscht. Natürlich ist dadurch die Laufzeit um einiges höher als bei den genannten Alternativen Quicksort und Mergesort, welche nach dem Divide-and-Conquer-Prinzip funktionieren. Bubblesort tauscht üblicherweise jedes Element sofort, sollte man immer erst nach einem Durchgang den Tausch vollziehen, handelt es sich übrigens um Selectionsort (quadratische Laufzeit, auch im Best-Case).

Beim Bubblesort vergleichen wir bei jedem der n-Durchgänge zwei Werte miteinandern. Wenn der … weiterlesen!

Microsoft Word: Dateifehler beim Speichern eines Dokumentes

Verfasst von: xed am 31 - Mrz - 2012 - Kategorisiert unter: Tipps -

Ein weiterer Tipp für Word-User: Sollte man mit der Fehlermeldung “Dateifehler” beim Abspeichern eines Dokumentes zu kämpfen haben, so findet sich der Übeltäter häufig im integrierte Formeleditor. Das Problem lässt sich recht einfach reproduzieren, indem man einen manuellen Zeilenumbruch (Shift+Return) mitten in eine Formel einfügt.

weiterlesen!

Qualtität statt Quantität: Wieso sich erkaufte Facebook-Fans und Twitter Follower nicht lohnen

Verfasst von: xed am 26 - Mrz - 2012 - Kategorisiert unter: Gedanken -

Der Trend von Social-Media steigt auch im kommerziellen Bereich immer weiter. Natürlich gibt es hier auch einen Markt, welcher speziell auf die starke Werbefunktion von sozialen Netzwerken aufbaut. So kann man mittlerweile für fast jede Art von Netzwerk sog. Fans käuflich erwerben. Dazu zählen Youtube-Views, Twitter-Follower sowie Facebook-Likes. Doch wie läuft das ab und was bringt das überhaupt? Der fiktive Fall von Jonas verrät, wieso man lieber die Finger davon lassen sollte.

Jonas hat einen Onlineshop eröffnet. Er bietet allerlei Krimskrams an, spezialisiert sich jedoch auf Sachbücher und ähnliche Literatur. Doch irgendwie wollen die Besucher nicht so wirklich auf seine Webseite gelangen. Dabei hat er doch extra Werbung bei Google-Adwords gekauft und auch selber im Bereich SEO einiges optimiert? … weiterlesen!

MySQL: Praktische Tipps und Tricks für die Command-Line

Verfasst von: xed am 13 - Mrz - 2012 - Kategorisiert unter: Dev -

MySQL ist ein überaus erfolgreiches Datenbankverwaltungssystem (DBMS). Und da das Projekt ziemlich riesig ist, bietet es auch einige Funktionen, welche vielleicht nicht jedem bekannt sind. Das ist schade, besonders da manche Tricks wirklich enorme Vorteile mit sich bringen und daher für viele sehr hilfreich sein könnten. Ich möchte folglich ein paar dieser Funktionen und Anwendungstipps vorstellen – vielleicht kennen Sie ja einige noch nicht und können damit etwas anfangen.

Logfile der Querys: Wenn man mal wieder ein wenig rumtüffelt, dann können schon mal die wildesten Querys und Kommandos über die Command-Line abgesendet werden. Wäre doch prima, wenn man dies alles protokollieren könnte? Der zusätzliche Parameter -tee mit Angabe des absoluten Pfads als Speicherort hilft dabei. … weiterlesen!

Eine Einleitung in die Kunst der regulären Ausdrücke (RegEx)

Verfasst von: xed am 7 - Feb - 2012 - Kategorisiert unter: Dev -

Reguläre Ausdrücke (engl. Regular Expressions; RegEx) werden in fast jeder Programmiersprache (u.a. Perl, C, Java, Python, PHP, Ruby) verwendet, um z.B. aus einer größeren Menge von Informationen genau die richtige herauszufiltern. Ansonsten findet man den Einsatz noch gerne bei Syntax-Validierungen, seien es Email-Adressen oder andere Benutzerangaben. Beispiele finden sich in fast jedem Programmcode. Ein regulärer Ausdruck stellt dabei ein Muster (Pattern) dar, welcher einen validen String vorgibt.

RegEx ist kein Hexenwerk… aber es ist trotzdem für viele am Anfang unverständlich, da die ganzen Klammern und Sonderzeichen doch ein wenig verwirren können. Genau aus diesem Grund möchte ich hier mit eine kleine Einleitung in das Thema geben. Wie üblich für eine Einleitungen gehe ich jetzt nicht auf alle Sachen genau … weiterlesen!

Captcha Implementierung in PHP – Analyse eines Negativbeispiels

Verfasst von: xed am 31 - Jan - 2012 - Kategorisiert unter: Websicherheit -

Captchas sind heutzutage kaum noch wegzudenken: Fast jede Seite benötigt mindestens bei der Registration die Eingabe eines Captchas, um automatisch ausgeführte Anmeldungen zu verhindern. Ziel ist es, jeglichen Spam sowie automatisierte Operationen abzuhalten oder mindestens zu minimieren. Daher trifft man auch häufig bei Kommmentarsystemen auf solche Captcha-Implementierungen.

Als ich wieder ziellos durch’s Internet zog, hat es mir eine Seite besonders angetan: Das eingesetzte System wurde selbst (also von privat) programmiert und beruht auf PHP+MySQL. Da selbsterstelle CMS immer viel interessanten Stoff bieten, habe ich mir das mal näher angesehen. Neben der LFI, welche ich dem Betreiber bereits vor knappen 6 Monaten mitgeteilt habe, konzentrierte ich mich dieses Mal auf das eingesetzte Captcha/den Antispam-Schutz.

Ersteindruck: Mangelhaft?
Dem interessierten Leser wird ein … weiterlesen!

Copyright & Co.

Der gesamte Inhalt (Texte und Publikationen) von dotxed.net steht - sofern nicht anders angegeben - unter Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) Lizenz. Was das genau bedeutet und unter welchen Bedingungen die Verwendung der hier bereitgestellten Inhalte erlaubt ist, siehst du auf creativecommons.org

About

Seit Mitte 2011 existiert dotxed.net als kleiner, privater Internetblog. Der Fokus liegt neben der Webentwicklung mit PHP, JS und SQL auf den umfangreichen Gebieten der IT Sicherheit. Auch einige Artikel über das quelloffene Linux sowie über verschiedene Themen der technischen Informatik werden mit der Zeit hinzukommen. Mehr Infos.