11#include "../include/sortings.h"
22#include "../include/comparators.h"
3+
34#include <stdio.h>
45#include <stdlib.h>
56#include <string.h>
67
8+ void swap (char * * a , char * * b ) {
9+ char * temp = * a ;
10+ * a = * b ;
11+ * b = temp ;
12+ }
13+
714void sort_bubble (char * * arr , size_t size , int (* comparator )(const char * , const char * )) {
815 for (size_t i = 0 ; i < size - 1 ; ++ i ) {
916 for (size_t j = 0 ; j < size - i - 1 ; ++ j ) {
@@ -22,8 +29,8 @@ void sort_insertion(char **arr, size_t size, int (*comparator)(const char *, con
2229 }
2330}
2431
25- void merge (char * * arr , size_t left , size_t mid , size_t right ,
26- int (* comparator )(const char * , const char * )) {
32+ static void merge (char * * arr , size_t left , size_t mid , size_t right ,
33+ int (* comparator )(const char * , const char * )) {
2734 size_t n1 = mid - left + 1 ;
2835 size_t n2 = right - mid ;
2936
@@ -65,8 +72,8 @@ void merge(char **arr, size_t left, size_t mid, size_t right,
6572 free (R );
6673}
6774
68- void merge_recursion (char * * arr , size_t left , size_t right ,
69- int (* comparator )(const char * , const char * )) {
75+ static void merge_recursion (char * * arr , size_t left , size_t right ,
76+ int (* comparator )(const char * , const char * )) {
7077 if (left < right ) {
7178 size_t mid = (right + left ) / 2 ;
7279 merge_recursion (arr , left , mid , comparator );
@@ -81,8 +88,8 @@ void sort_merge(char **arr, size_t size, int (*comparator)(const char *, const c
8188 }
8289}
8390
84- size_t partition (char * * arr , size_t left , size_t right ,
85- int (* comparator )(const char * , const char * )) {
91+ static size_t partition (char * * arr , size_t left , size_t right ,
92+ int (* comparator )(const char * , const char * )) {
8693 char * pivot = arr [right ];
8794 size_t i = left ;
8895
@@ -97,8 +104,8 @@ size_t partition(char **arr, size_t left, size_t right,
97104 return i ;
98105}
99106
100- void quick_recurion (char * * arr , size_t left , size_t right ,
101- int (* comparator )(const char * , const char * )) {
107+ static void quick_recurion (char * * arr , size_t left , size_t right ,
108+ int (* comparator )(const char * , const char * )) {
102109 if (left < right ) {
103110 size_t pivot = partition (arr , left , right , comparator );
104111 if (pivot > 0 ) {
@@ -114,7 +121,7 @@ void sort_quick(char **arr, size_t size, int (*comparator)(const char *, const c
114121 }
115122}
116123
117- void reverse_string_array (char * arr [], int size ) {
124+ static void reverse_string_array (char * arr [], int size ) {
118125 int i = 0 ;
119126 int j = size - 1 ;
120127
@@ -128,7 +135,7 @@ void reverse_string_array(char *arr[], int size) {
128135 }
129136}
130137
131- size_t get_max_length (char * * arr , size_t size ) {
138+ static size_t get_max_length (char * * arr , size_t size ) {
132139 size_t max_len = 0 ;
133140 for (size_t i = 0 ; i < size ; i ++ ) {
134141 size_t len = strlen (arr [i ]);
@@ -139,7 +146,7 @@ size_t get_max_length(char **arr, size_t size) {
139146 return max_len ;
140147}
141148
142- char get_char_at_pos (const char * str , size_t pos ) {
149+ static char get_char_at_pos (const char * str , size_t pos ) {
143150 if (pos < strlen (str )) {
144151 return str [pos ];
145152 }
0 commit comments