Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <ctime>
- #include <stdlib.h>
- using namespace std;
- struct node{
- node * Next;
- int value;
- };
- struct lista{
- node * H;
- int size;
- lista(){
- H= NULL;
- size = 0;
- }
- bool isEmpty(){
- if(size==0) return true; else return false;
- }
- void ADD(int val){
- node * temp = new node;
- temp->value=val;
- if(isEmpty()){
- temp->Next=H;
- H = temp;
- }else{
- node * ostatni_element = new node;
- ostatni_element=H;
- while(ostatni_element->Next!=NULL){
- ostatni_element=ostatni_element->Next;
- }
- temp->Next=ostatni_element->Next;
- ostatni_element->Next = temp;
- }
- size++;
- }
- void SHOW(){
- node * temp;
- temp =H;
- cout << "ELEMENTY LISTY: \n";
- int numer =1;
- while(temp !=NULL){
- cout <<numer<<". "<< temp->value <<endl;
- temp=temp->Next;
- numer++;
- }
- }
- bool DELL(int numer){
- if(numer>size || numer <1) return 0;
- int number = 1;
- node* temp, *przedostatni=NULL;
- temp = H;
- while(temp->Next != NULL && number < numer){
- przedostatni=temp;
- temp=temp->Next;
- number++;
- }
- if(przedostatni==NULL){
- H=temp->Next;
- }else{
- przedostatni->Next=temp->Next;
- }
- delete temp;
- return 1;
- }
- int FIND(int val){
- if(isEmpty()) return 0;
- node * temp = H;
- int number = 1;
- while(temp!=NULL){
- if(temp->value == val) return number;
- temp=temp->Next;
- number++;
- }
- return 0;
- }
- bool FINDtoDELL(int val){
- int numer = FIND(val);
- if(numer != 0 ) return DELL(numer);
- return 0;
- }
- };
- int main(){
- lista nowa;
- nowa.ADD(1);
- nowa.ADD(2);
- nowa.ADD(3);
- cout << nowa.isEmpty();
- nowa.SHOW();
- cout << nowa.FINDtoDELL(3);
- nowa.SHOW();
- system("pause");
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement