Dlaczego w informatyce rosną drzewa?
Mam wrażenie, że wraca do drukarki i że program przemierzający drzewo najpierw drukuje korzeń i używa pojęcia bezdennego stosu papieru, aby wyrazić nieokreślony poziom rekurencji, który można napotkać.
Bibliografia:
Drzewa rosną w dół, a ich korzenie znajdują się u góry strony, a liście poniżej
Z ON WOJNY ŚWIĘTE I PLEA O POKOJ .
zgodnie z konwencją drzewa rosną w dół
Z artykułu w Wikipedii na temat struktur danych drzewa.
Prawdziwe drzewa rosną od korzenia w górę do nieba, ale drzewa informatyczne rosną od korzenia w dół
Z notatek z wykładu Davida Schmidta .
computer-science
conventions
maxpolk
źródło
źródło
Odpowiedzi:
Tylko zgadnij:
Struktury drzew rosną w dół (korzeń u góry, liście u dołu), ponieważ ludzie czytają od góry strony w dół. Ponadto, jeśli narysujesz duże drzewo, które rozciąga się na kilku stronach, byłoby niezręcznie poprosić czytelnika, aby przeskoczył o kilka stron do przodu, a następnie pracował do tyłu.
Ponadto, niezależnie od tego, czy konwencja rozpoczęła się z powodu wyjaśnionego powyżej, czy z jakiegoś innego powodu, kontynuujemy praktykę dzisiaj właśnie dlatego, że jest to konwencja. Mamy odpowiednie terminy, takie jak węzeł najwyższego poziomu (co oznacza root), co nie miałoby większego sensu, gdybyśmy narysowali strukturę z rootem na dole.
źródło
Konwencja wydaje się wynikać z algorytmu Coffmana-Grahama, który ma na celu:
Ich praca z 1972 r. ( PDF ) pokazuje ukierunkowany wykres acykliczny rysowany od góry do dołu. Jest to krótki krok do przedstawienia drzewa w ten sam sposób.
W tym artykule na temat warstwowego wykresu graficznego znajduje się dalszy komentarz do tej wizualizacji .
źródło
Czerpiąc z
top > down
ileft > right
są popularne w informatyce, ponieważ są to początkowe kierunki w pisanym języku angielskim. Biorąc pod uwagę, że większość prac z zakresu informatyki jest napisana w języku angielskim, niezależnie od rodzimego języka pisarza, byłby to najbardziej rozpowszechniony sposób rysowania diagramów.Dla czytelników języka angielskiego najbardziej naturalne jest odczytywanie wykresu z dowolnej innej alternatywy
top > down
lubleft > right
z niej.Przeszukaj images.google.com
directed tree graph
i przejrzyj wyniki. Jedyne drzewo schematy mogę znaleźć, że poszedł w górę były UML Diagramy klas, a tylko dlatego, że jest konwencja, że wybrał dla klasy UML diagramów. Wszystkie inne diagramy UML idąleft > right
lubup > down
.Rozważałbym czytanie skierowanych wykresów drzew z
down > up
tak nienaturalnego, jak czytanie najczęściej wysyłanych wątków e-mail; co powiedzieć jest całkowicie nienaturalne.źródło