5 #ifndef DSALGLIB_LINKLIST_H 6 #define DSALGLIB_LINKLIST_H 34 lnode* create_lnode(type param)
36 lnode *temp =
new lnode(param);
98 lnode *temp= from.start;
99 while(temp!=from.last)
116 if(index>=0&&index<count)
119 long long int counter = 0;
137 lnode *temp = create_lnode(param);
140 temp->prev =
nullptr;
163 lnode *temp = create_lnode(param);
166 temp->prev =
nullptr;
192 lnode *temp = start,*another_temp;
203 another_temp=temp->next;
205 another_temp->prev = last;
206 start = another_temp;
227 lnode *temp = last,*another_temp;
239 another_temp=temp->prev;
240 another_temp->next = start;
259 lnode *temp = start->next;
260 if(start->data==svalue)
return 0;
261 if(last->data==svalue)
return count-1;
266 if(temp->data==svalue)
276 void remove(type rvalue)
281 lnode *temp = start->next,*another_temp=
nullptr;
282 if(start->data==rvalue)
287 if(last->data==rvalue)
294 if(temp->data==rvalue)
296 another_temp->next=temp->next;
316 if(index>=0&&index<count)
324 lnode *temp = start,*another_temp;
325 long long int counter = 1;
331 another_temp=temp->next->next;
333 temp->next = another_temp;
334 another_temp->prev = temp;
354 #endif //DSALGLIB_LINKLIST_H
void traverse(void(fun)(type obj))
void add_back(type param)
type & operator[](long long int index)
void remove_at(long long int index)
void add_front(type param)
void operator=(linklist< type > from)
long long int search(type svalue)