Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

David Scherfgen

Administrator

  • »David Scherfgen« ist der Autor dieses Themas

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

41

24.02.2008, 10:32

TGGC hat mich verstanden! Meine Zahlen sind natürlich alle viel kleiner. :roll:

Mastermind

unregistriert

42

24.02.2008, 13:39

Zitat von »"p0llux"«

Leute, das heisst NP-schwer ;) *SCNR*

Und wo ich gerade Korinthen kacke, Warshall ist da ungeeignet, wegen dem Speicheraufwand :P


wovon zum Henker redest du?

p0llux

Treue Seele

Beiträge: 101

Wohnort: Aachen

Beruf: HiWi (theo. Inf.)

  • Private Nachricht senden

43

24.02.2008, 19:00

Zitat von »"Mastermind"«

wovon zum Henker redest du?


Ich rede' von deiner komikalischen Bemerkung mit den lieblosen "brain on/off" Tags. Es heisst NP-schwer und nicht NP-hart. Dazu kommt (scheinbar hast du dir das Vorgeplänkel nicht genau durchgelesen), dass man David's Frage durchaus als eine Frage nach einem Longest-Path verstehen kann. Mir ist absolut klar, dass einige Graphprobleme einfach sind. Aber es freut mich das ich dir helfen konnte ;)

@S.Seegel: Die Zeiten sehen echt nett aus :) [EDIT] Hehe. Langsam werde ich auch neidisch ^^ Selbst das initialisieren des Kostenarrays via memset oder Schleife dauert länger, als dein Algorithmus :(

David Scherfgen

Administrator

  • »David Scherfgen« ist der Autor dieses Themas

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

44

24.02.2008, 23:06

Lasst uns einfach hoffen, dass sein Timer falsch läuft :)

S.Seegel

2x Contest-Sieger

  • Private Nachricht senden

45

24.02.2008, 23:23

Meine Lösung gefällt mir jeden Tag besser :D

Aber p0llux bringt mich da auf was: ich verwende ebenfalls memset(), aber ich gehe mal davon aus, dass cstring als Teil der Standardbibliothek gilt (wenn auch C) und damit erlaubt ist, richtig ?

46

24.02.2008, 23:24

Zumindest wenn man den offiziellen ISO-Standard nimmt, sind die Header <c....> Bestandteil des Standards.
Devil Entertainment :: Your education is our inspiration
Der Spieleprogrammierer :: Community Magazin
Merlin - A Legend awakes :: You are a dedicated C++ (DirectX) programmer and you have ability to work in a team? Contact us!
Siedler II.5 RttR :: The old settlers-style is comming back!

Also known as (D)Evil

rklaffehn

Treue Seele

Beiträge: 267

Wohnort: Braunschweig

  • Private Nachricht senden

47

25.02.2008, 12:13

kannst ja auch std::fill (begin, end, value) nehmen... da kommt am Ende dann auch ein ::memset bei raus, sagt jedenfalls mein Profiler. Wie auch immer der Compiler gemerkt hat, dass meine Iteratoren tatsächlich echte Zeiger sind :)
God is real... unless declared integer.
http://www.boincstats.com/signature/user_967277_banner.gif

Mastermind

unregistriert

48

25.02.2008, 13:16

Zitat von »"p0llux"«



Ich rede' von deiner komikalischen Bemerkung mit den lieblosen "brain on/off" Tags. Es heisst NP-schwer und nicht NP-hart.


NP-hart ist eine schlechte übersetzung von NP-hard, aber nichtsdestoweniger eine gängige, die auch in einige Bücher (und Vorlesungen) einzug gefunden hat.

Genauso wie Instanz eine schlechte Übersetzung von instance ist.

Normative Behauptungen über Sprache sind Bullshit. Richtig ist, wie die Leute sprechen, nicht wie irgendwelche Klugscheißer meinen.

Zitat


Dazu kommt (scheinbar hast du dir das Vorgeplänkel nicht genau durchgelesen), dass man David's Frage durchaus als eine Frage nach einem Longest-Path verstehen kann. Mir ist absolut klar, dass einige Graphprobleme einfach sind. Aber es freut mich das ich dir helfen konnte ;)


Wie du an meinem Edit, der zeitlich vor deinem Post kam erkennen kannst habe ich die Disambiguität dürchaus gesehen und mich nochmal fragenderweise rückversichert ob er den längsten optimalen Pfad meint. Du dagegen bist direkt davon ausgegangen, dass deine Interpretation seiner Frage die einzig richtige ist (scheint ein wesentliches Merkmal deines Umgangs mit Sprache zu sein).

Was mich noch interessieren würde... wofür meinstest du sei Warshall aufgrund des Speicherbedarfs ungeeignet? Darauf bezog sich nämlich auch die Frage mit dem Henker.

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

49

25.02.2008, 13:23

Zitat von »"rklaffehn"«

Wie auch immer der Compiler gemerkt hat, dass meine Iteratoren tatsächlich echte Zeiger sind :)


Is doch easy! :) In etwa so:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
template< typename T, typename Iter >
void fill( Iter begin, Iter end, const T& value )
{
    for ( ; begin != end; ++begin )
        *begin = value;
}

void fill( char* begin, char* end, int value )
{
    memset( begin, value, end-begin );
}

void fill( signed char* begin, signed char* end, int value )
{
    memset( begin, value, end-begin );
}

void fill( unsigned char* begin, unsigned char* end, int value )
{
    memset( begin, value, end-begin );
}
@D13_Dreinig

50

25.02.2008, 14:17

Ich wüsste nicht wie, aber ist es eigtl. mit Templates möglich, eine Spezialisierungs nicht nur auf einen Typ auszuweiten, sondern auf mehrere? (also in deinem Fall aus char, signed char und unsigned char eine Spezialisierung machen ...)
Devil Entertainment :: Your education is our inspiration
Der Spieleprogrammierer :: Community Magazin
Merlin - A Legend awakes :: You are a dedicated C++ (DirectX) programmer and you have ability to work in a team? Contact us!
Siedler II.5 RttR :: The old settlers-style is comming back!

Also known as (D)Evil

Werbeanzeige