Mam małe pytanie historyczne, a mianowicie, jak głosi tytuł, szukam wczesnych zastosowań drzew (jako struktury danych, drzewa wyszukiwania, cokolwiek) w informatyce.
Mam małe pytanie historyczne, a mianowicie, jak głosi tytuł, szukam wczesnych zastosowań drzew (jako struktury danych, drzewa wyszukiwania, cokolwiek) w informatyce.
Odpowiedzi:
Wikipedia twierdzi, że pierwsze użycie drzewa w matematyce miało Cayley w 1857 roku.
Ponieważ wykorzystanie w informatyce jest zaczerpnięte bezpośrednio z matematyki, bardziej fundamentalne wydaje się pytanie, kiedy powstały. O ile informatycy pierwotnie nie nazwali drzew czymś innym, pierwszy informatyk, który użył „drzewa”, nie wydaje się bardziej znaczący niż, powiedzmy, pierwszy Australijczyk, który użył „drzewa”.
Według TAOCP Donalda Knutha, t. 1, str. 459 następujące artykuły można uznać za jeden z pierwszych występów drzew w CS.
Sprawdź TAOCP, aby uzyskać więcej informacji i więcej referencji.
Izajasz: „„ I wyjdzie pręt z łodygi Jessego, a gałąź wyrosnie z jego korzeni ”
Drzewo jako model danych dla informacji genealogicznych jest rzeczywiście bardzo starożytne.
Znalazłem ten artykuł w (BCS) Computer Journal z 1960 r .:
PF Windley: Drzewa, lasy i przestawianie.
Wprowadza pojęcie „drzew”, krótko opisane przez Douglasa (1959) „[Sandy Douglas]” i przypisane Berners-Lee „[Conway Berners-Lee, ojciec Tima].
Co ciekawe, jego drzewa są botanicznie dokładniejsze niż współczesne drzewa CS, ponieważ mają korzenie na dole, a nie na górze!
Przypadkowo ostatnim cytatem w artykule jest artykuł, którego Windley jest współautorem Tony'ego Rowlanda Jonesa i „LF Kay”, co jest błędnym błędem dla LR Kay, mojego ojca, który kierował UCCA, centralnym systemem rekrutacji na uniwersytety w UK.
List Conwaya BL do Computer Journal komentujący ten artykuł oraz odpowiedź Windleya są podzielone między strony 174 i 184 następującego wydania:
http://comjnl.oxfordjournals.org/content/3/3/174.full.pdf+html http://comjnl.oxfordjournals.org/content/3/3/175.full.pdf+html
Rachunek Lambda sięga lat 30. XX wieku. Jego gramatyka jest wczesnym zastosowaniem drzew, szczególnie abstrakcyjnych drzew składniowych. Każdy termin LC jest drzewem. Zmienne to węzły liści. Zarówno abstrakty, jak i terminy aplikacji składają się z innych terminów, dlatego nie są węzłami typu liść.
Nie wiem, kiedy po raz pierwszy terminy LC były uważane za drzewa. Jednak wczesne dowody obejmujące LC wymagały analizy przypadków, podobnie jak robią to teraz programiści piszący programy, aby przejść AST.