Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- Задача VII.7:
- Да се разработи подпрограма, която добавя нов елемент в края на линеен
- едносвързан списък с цели числа.
- */
- #include <iostream>
- #include <bits/stdc++.h>
- struct Node
- {
- int numberCount;
- int data;
- struct Node* next;
- } *first = NULL, *last = NULL;
- using namespace std;
- void addNumbers(int x) // if number is repeated then the numberCount != 1
- {
- if(first == NULL)
- {
- first = new Node;
- first->data = x;
- first->next = NULL;
- first->numberCount = 1;
- last = first;
- }
- else
- {
- int numberExist = 1;
- struct Node*p = first;
- while(p)
- {
- if(p->data == x)
- {
- p->numberCount = p->numberCount + 1;
- numberExist = 0;
- break;
- }
- p =p->next;
- }
- if(numberExist)
- {
- Node *t = new Node;
- t->data = x;
- t->next = NULL;
- t->numberCount = 1;
- last->next = t;
- last = t;
- }
- }
- }
- void displayList(struct Node *p)
- {
- while(p)
- {
- cout << p->data << " ";
- p = p->next;
- }
- cout << endl;
- }
- void countNumber(struct Node *p)
- {
- int numberOfElements = 0;
- while(p)
- {
- p = p->next;
- numberOfElements++;
- }
- cout << "The number of elements in the list is: " << numberOfElements << endl;
- cout << endl;
- }
- void countSpecificNumbers(struct Node *p, int specifiedNumber)
- {
- int numberOfElements = 0;
- while(p)
- {
- if(p->data == specifiedNumber)
- numberOfElements++;
- p = p->next;
- }
- cout << "The number of elements with value "<< specifiedNumber << " in the list is: " << numberOfElements << endl;
- }
- void findMaxList(struct Node*p)
- {
- int maxNumber = INT_MIN;
- while(p)
- {
- if(p->data > maxNumber)
- maxNumber = p->data;
- p = p->next;
- }
- cout << "The maximum number is "<< maxNumber << endl;
- }
- void displayNonrepeatedNumbers(struct Node*p)
- {
- cout << "Numbers that doesn't repeat " << endl;
- while(p)
- {
- if(p->numberCount == 1)
- {
- cout << p->data << " ";
- }
- p = p->next;
- }
- cout << endl;
- }
- void mostCommonElement(struct Node*p)
- {
- int mostCommonNumber = p->data;
- int mostCommonElementcounter = p->numberCount;
- while(p)
- {
- if(p->numberCount > mostCommonElementcounter)
- {
- mostCommonNumber = p->data;
- }
- p = p->next;
- }
- cout << "The most common number is " << mostCommonNumber << endl;
- }
- int main()
- {
- //2, 4, 0, 2, 5, 4, 7
- addNumbers(2);
- addNumbers(4);
- addNumbers(0);
- addNumbers(2);
- addNumbers(5);
- addNumbers(4);
- addNumbers(7);
- displayList(first);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement