Estruktura ng datos

(Idinirekta mula sa Data structure)

Sa agham pangkompyuter, ang data structure (estruktura ng datos ay isang lohikal na pagsasaayos ng datos sa isang kompyuter upang magamit ito ng mas epektibo. Ito ay ang implementasyon ng abstract data type (tipo ng abstraktong datos) sa isang wikang pamprograma kung saan ang mga kaukulang operasyon ay maaaring gawin sa datos na nakapaloob dito. Ang iba't ibang klase ng estruktura ng datos ay may kanya-kanyang gamit. Sa katunayan, ang iba sa mga ito ay spesipiko lamang para sa isang gawain. Halimbawa, mas magandang gumamit ng mga punong binaryo kung madami ang datos na kailangan isaayos (katulad ng mga database) at ang array kung simpleng pagmamanipula lamang ng limitadong datos ang kailangan. Napaka-importante ng mga estruktura ng datos sa pag gawa ng mga sopwer sa kompyuter. Ang ilan sa mga epektibong algoritmo ay nangangailangan ng implementasyon ng mga estruktura ng datos upang tumakbo ng maayos. Kinakailangan din ito upang mapadali ang pag disenyo ng mga database kung saan importante ang pagkakasaayos ng datos.

Konsepto sa likod ng data structuresBaguhin

Nakabase ang konsepto nito sa pagkuha ng datos ng kompyuter sa memorya nito. Kumbaga ang nangyayari sa data structure ay ang pagkukwenta ng mga address ng datos (katulad ng sa array) o di kaya ang pagtatago mismo ng address ng mga ito sa loob mismo ng data structure (linked list) upang makita ang mga elemento na kabilang sa estruktura na iyon.

Iba't ibang klase ng data structuresBaguhin

Ang pinaka-laganap na data structure ay ang array. Halos lahat ng mga high-level programming language ay nag-iimplementa ng ganitong uri ng estruktura ng datos. Ang ilan pa sa mga karaniwang estruktura ng datos ang : stack, queue, pinagdugtong na listahan, punong binaryo.

Mga datatype (tipo ng datos)Baguhin

Tipong primitiboBaguhin

Tipong kompuwestoBaguhin

Tipong abstraktoBaguhin

Estruktura ng datos na linealBaguhin

ArraysBaguhin

ListahanBaguhin

Trees (Puno)Baguhin

Binary trees (Punong binaryo)Baguhin

B-treesBaguhin

Heaps (bunton)Baguhin

TriesBaguhin

Multiway treesBaguhin

Space-partitioning treesBaguhin

Application-specific treesBaguhin

HashesBaguhin

Graphs (Grapo)Baguhin

Iba paBaguhin

SanggunianBaguhin