Lucrul cu liste dublu înlănțuite circulare în C

Proiect
6/10 (1 vot)
Conține 1 fișier: doc
Pagini : 13 în total
Cuvinte : 1070
Mărime: 13.94KB (arhivat)
Publicat de: Cecil Robu
Puncte necesare: 8
Profesor îndrumător / Prezentat Profesorului: Cristian Toma
facultatea cibernetica din cadrul ASE Bucuresti la materia Structuri de Date.

Cuprins

  1. 1. INTRODUCERE.3
  2. 2. STRUCTURA PROGRAMULUI.4
  3. 3. STRUCTURI DE DATE UTILIZATE.5
  4. 4. DESCRIEREA IMPLEMENTARII OPERATIILOR DE BAZA.6
  5. 5. CONCLUZII.8
  6. 6. BIBLIOGRAFIE.9
  7. 7. ANEXE.10

Extras din proiect

1. INTRODUCERE

Pe baza structurii de date lista dublu inlantuita circulara, se realizeaza un program in limbajul de programare C care sa efectueze asupra acestei structuri operatii specifice de creare a structurii, de actualizare si de stergere a acesteia, cu precizarea ca respectiva lista este ordonata crescator si nu admite informatii redundante.

Aplicaţia a fost realizată în Microsoft Visual Studio 2008 Express Edition. Pentru realizarea proiectului a fost consultată o bibliografie formată din două cărţi.

2. STRUCTURA PROGRAMULUI

Aplicaţia conţine un meniu care permite utilizatorului sa afiseze lista dublu inlantuita circulara, care va fi afisata pe ecran in ordine crescatoare; permite utilizatorului totodata sa adauge un element nou in lista iar odata cu introducerea mai multor elemente consecutiv, la optiunea de afisare a listei, elementele vor fi in ordine crescatoare. In meniu se mai poate alege optiunea de stergere completa a listei si o ultima optiune de iesire din meniu.

3. STRUCTURI DE DATE UTILIZATE

Structura de date utilizata este lista dublu inlantuita circulara.

typedef struct tnod{

int info;

struct tnod *pred;

struct tnod *urm;

}TNOD;

4. DESCRIEREA IMPLEMENTĂRII OPERAŢIILOR DE BAZĂ

1.Adaugarea de elemente

Adauga un nod la o lista dublu inlantuita. Returneaza 1 daca nodul a fost adaugat sau zero daca nu s-a realizat adaugarea.

int adauga(TNOD** al, int v){

NOD *a;

TNOD *l;

l=*al;

a=(TNOD*)malloc(sizeof(TNOD));

if (a==NULL){

printf("nAlocare memorie esuata!n");

return 0; }

a->info=v;

if (l==NULL){

*al=a;

a->urm=a;

a->pred=a;

}

else if ((l->info>a->info)||(l->pred->info<a->info)){

a->urm=l;

a->pred=l->pred;

l->pred->urm=a;

l->pred=a;

if (l->info>a->info) *al=a;

}

else {

while ((l->urm->info<a->info)&&(l->urm!=*al)){

l=l->urm;

}

if (l->urm->info==a->info){

printf("nNodul exista deja!n");

free(a);

return 0;

}

a->urm=l->urm;

Preview document

Lucrul cu liste dublu înlănțuite circulare în C - Pagina 1
Lucrul cu liste dublu înlănțuite circulare în C - Pagina 2
Lucrul cu liste dublu înlănțuite circulare în C - Pagina 3
Lucrul cu liste dublu înlănțuite circulare în C - Pagina 4
Lucrul cu liste dublu înlănțuite circulare în C - Pagina 5
Lucrul cu liste dublu înlănțuite circulare în C - Pagina 6
Lucrul cu liste dublu înlănțuite circulare în C - Pagina 7
Lucrul cu liste dublu înlănțuite circulare în C - Pagina 8
Lucrul cu liste dublu înlănțuite circulare în C - Pagina 9
Lucrul cu liste dublu înlănțuite circulare în C - Pagina 10
Lucrul cu liste dublu înlănțuite circulare în C - Pagina 11
Lucrul cu liste dublu înlănțuite circulare în C - Pagina 12
Lucrul cu liste dublu înlănțuite circulare în C - Pagina 13

Conținut arhivă zip

  • Lucrul cu Liste Dublu Inlantuite Circulare in C.doc

Alții au mai descărcat și

Grilă sisteme informaționale de gestiune - Access

Adăugarea de câmpuri la o tabelă se face în modul de vizualizare:...... Previzualizare inaintea imprimarii Aplicarea unei restrictii de...

Hackeri

Hackerii sunt pasionati ai informaticii, care, de obicei au ca scop „spargerea” anumitor coduri, baze de date, pagini web etc. Ei sunt considerati...

Baze de Date

3.Introducere in bd si sgbd-uri Definitie: Numim baza de date o colectie partajata de date aflata in interdependenta logica impreuna cu o...

Baze de Date

1. DETALII DESPRE PROIECT Acest proiect isi propune sa realizeze o baza de date pentru evidenta angajatilor si salarizarii acestora in cadrul...

Te-ar putea interesa și

Implementarea bazei de date a unui policlinici - listă dublu înlănțuită circulară

1. Introducere 1.1. Istoria bazelor de date Când vine vorba despre stocarea informaţiilor, pentru unii acest termen înseamnă o agenda veche în...

Laborator SDA

LISTE SIMPLU ÎNLANTUITE 1. Continutul lucrarii În lucrare sunt prezentate operatiile importante asupra listelor simplu înlantuite si...

Structuri de Date și Algoritmi

Se citesc m perechi de numere întregi (x,y) reprezentând extremitatile muchiilor unui graf neorientat cu n vârfuri si m muchii. Sa se verifice...

Programarea Calculatoarelor

Lucrarea nr. 1 Determinarea experimentala a timpului de execuţie al unui program 1. Scopul lucrării - lucrarea prezintă aspecte legate de...

Algoritmi și Structuri de Date

1. ALGORITMI SI MODURI DE REPREZENTARE Prelucrarea datelor cu ajutorul calculatorului se realizeazã prin executia unor operatii simple...

Ai nevoie de altceva?