eolymp
bolt
Try our new interface for solving problems
Məsələlər

LinkedList Sinfi

LinkedList Sinfi

Zaman məhdudiyyəti 1 saniyə
Yaddaşı istafadə məhdudiyyəti 128 MiB

Növbəti əməliyyatları dəstəkləyən Biristiqamətli əlaqələndirilmiş siyahı strukturunu reallaşdırın:

  • Empty - Siyahının boş olmasını yoxlayır. true və ya false qaytarır.

  • addFirst - Siyahının əvvəlinə element əlavə edir.

  • addLast - Siyahının sonuna element əlavə edir.

  • removeFirst - Siyahının əvvəlindəki elementi silir.

  • removeLast - Siyahının sonundakı elementi silir.

  • size - Siyahının elementlərinin sayını qaytarır.

  • Print - Siyahının elementlərini tək sətirdə çap edir.

Növbəti interfeysə uyğun kod yazın:

// Java
class ListNode
{
  int data; // təpənin qiyməti
  ListNode next; // növbəti təpəyə keçid
  public ListNode(int data); // konstruktor
}

class LinkedList
{
  ListNode head, tail; // siyahının əvvəlinə və sonuna keçid
  public LinkedList(); // konstruktor
  public boolean Empty(); // siyahının boş olmasını yoxlamaq
  public void addFirst(int val); // val qiymətini siyahının əvvəlinə əlavə etmək
  public void addLast(int val); // val qiymətini siyahının sonuna əlavə etmək
  public boolean removeFirst(); // siyahının birinci elementini silmək, silmə əməliyyatı müvəffəqiyyətlə yerinə yetirilərsə, true qaytarmaq
  public boolean removeLast(); // siyahının sonuncu elementini silmək, silmə əməliyyatı müvəffəqiyyətlə yerinə yetirilərsə, true qaytarmaq
  public int size(); // siyahının uzunluğunu qaytarmaq
  public void Print(); // siyahının elementlərini tək sətirdə çap etmək
}

// C++
class ListNode
{
public:
  int data; // təpənin qiyməti
  ListNode *next; // növbəti təpənin göstəricisi 
  ListNode(int data); // konstruktor
};

class LinkedList
{
public:
  ListNode *head, *tail;  // siyahının əvvəlinin və sonunun göstəriciləri
  LinkedList(); // konstruktor
  bool Empty(); // siyahının boş olmasını yoxlamaq
  void addFirst(int val); // val qiymətini siyahının əvvəlinə əlavə etmək
  void addLast(int val); // val qiymətini siyahının sonuna əlavə etmək
  bool removeFirst(); // siyahının birinci elementini silmək, silmə əməliyyatı müvəffəqiyyətlə yerinə yetirilərsə, true qaytarmaq
  bool removeLast(); // siyahının sonuncu elementini silmək, silmə əməliyyatı müvəffəqiyyətlə yerinə yetirilərsə, true qaytarmaq
  int size(); // siyahının uzunluğunu qaytarmaq
  void Print(); // siyahının elementlərini tək sətirdə çap etmək
};

prb10045.gif
Müəllif Михаил Медведев