Probleme propuse: Liste dublu inlanțuite c++
1. Sa se memoreze intr-o lista dubla n numere intregi. Care este primul element palindrom
din dreapta?
2. Sa se memoreze intr-o lista dubla n numere intregi. Sa se interschimbe primul element
cu ultimul, al doilea cu penultimul etc. (informatiile utile).
3. Sa se stearga prima si ultima valoare egala cu x dintr-o lista dubla
4. Sa se insereze intre oricare doua elemente suma celorlalte
5. O lista dubla retine caractere. Sa se determine daca sirul retinut de lista este palindrom. Se
citeste un caracter k. Sa se insereze acest caracter inainte de fiecare vocala.
6. fis1.txt si fis2.txt retin doua numere foarte mari sa se determine suma celor doua numere.
7. Sa se determine cea mai lunga secventa crescatoare dintr-o lista dubla. Dupa afisare se va
sterge aceasta secventa
8. Sa se afiseze o lista ca perechi de numere: primul cu ultimul, al doilea cu penultimul
s.a.m.d. pana la jumatate
9. Fie o lista dubla. Sa se afiseze lista stanga-dreapta si dreapta stanga (icepand de la primul
apoi de la ultimul). Se cunoaste adresa unui element oarecare din lista.
10. Sa se mute zerourile la sfarsitul unei liste duble. Nu se va folosi o lista intermediara

Răspuns :

Din fisierul date.in se citeste un numar natural k si apoi de pe a doua linie numere intregi. Contruiti o lista liniara simplu inlantuita care sa contina numerele intregi citite in ordinea din fisier.

Permutati lista cu k pozitii spre stanga si afisati valorile din lista.

Indicatie: se vor scrie si folosi functii pentru adaugarea unei valori la sfarsitul listei si pentru stergerea primului nod al listei si vor fi folosite pentru permuarea ceruta.

Exemplu:

date.in

3

1 2 3 4

date.out

4 1 2 3

Rezolvare

#596. [2014-05-15 - 10:32:03]

Se considera o lista liniara simplu inlantuita cu nodurile definite astfel:

struct Node

{

int key; //informatia memorata (utila)

Node* next; //legatura spre nodul urmator

};

Scrieti o functie care sa ordoneze crescator informatiile din lista. Functia va primi ca paramentru adresa primului nod al listei.

Rezolvare

#220. [2010-04-26 - 09:38:19]

Se citesc numere intregi dintr-un fisier text. Sa se creeze 2 liste care sa contina in ordine elementele din fisier, una elementele pare, iar cealalta pe cele impare.

Sa se adauge la sfarsitul listei cu elemente pare lista cu elemente impare.

Rezolvare

#219. [2010-04-26 - 09:38:12]

Sa se creeze o lista liniara simplu inlantuita care contine elemente intregi citite dintr-ul fisier text.

Se citeste apoi o valoare intreaga x. Sa se stearga primul nod care contine valoarea x.

Rezolvare

#218. [2010-04-26 - 09:38:04]

Sa se creeze o lista liniara simplu inlantuita care contine elemente numere reale citite dintr-ul fisier text.

Sa se insereze intre oricare 2 noduri din lista un nod care sa contina