Advertisement
Guest User

Untitled

a guest
Oct 21st, 2019
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.71 KB | None | 0 0
  1. /*
  2. * singly_linked_list.h
  3. *
  4. * Created on: Oct 16, 2019
  5. * Author: Bojan Rikic RA134/2016
  6. */
  7.  
  8. #ifndef SINGLY_LINKED_LIST_H_
  9. #define SINGLY_LINKED_LIST_H_
  10.  
  11. #include <stdio.h>
  12. #include <stdint.h>
  13. #include <stdlib.h>
  14. #include <inttypes.h>
  15. #include <stdbool.h>
  16. #include <assert.h>
  17. #include <ctype.h>
  18. #include <limits.h>
  19.  
  20. typedef struct node
  21. {
  22. int_least16_t value;
  23. struct node* next;
  24. } Node;
  25.  
  26.  
  27. typedef struct list
  28. {
  29. Node* head;
  30. } List;
  31.  
  32. /* Funckija koja pravi čvor */
  33. Node* create_node(int_least16_t new_value);
  34.  
  35. /* Funkcija za inicijalizaciju liste */
  36. List* make_list(void);
  37.  
  38. /* Funkcija za dodavanje čvora na početak liste */
  39. void push_begin(List* singly_linked_list , int_least16_t n);
  40.  
  41. /* Funkcija pomoću koje dodajemo čvor u listu nakon određenog čvora, odnosno čvora kog smo prosledili kao parametar funkcije */
  42. void insert_in_list(const List* singly_linked_list, const Node *position, int_least16_t n);
  43.  
  44. /* Funkcija za dodavanje čvora na kraj liste */
  45. void push_end(List* singly_linked_list, int_least16_t n);
  46.  
  47. /* Funkcija za ispis elemenata liste */
  48. void print_list(const List* singly_linked_list);
  49.  
  50. /* Funkcija koja vraća element sa kraja liste, i izbacuje ga iz liste */
  51. int_least8_t pop_last(List* singly_linked_list);
  52.  
  53. /* Funkcija za brisanje svih elemenata liste */
  54. void clear_list(List* singly_linked_list);
  55.  
  56. /* Funkcija koja deli listu na dve liste, odnosno u prvoju listi se nalazi elementi koji su bili na parnom indeksu liste koju delimo, a u drugoj obratno, lista koju delimo nakon poziva funkcije se isprazni */
  57. void split_list(List* singly_linked_list, List* list_with_even_index , List* list_with_odd_index);
  58.  
  59.  
  60.  
  61. #endif /* SINGLY_LINKED_LIST_H_ */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement