1
0
forked from 131/lab4_sort

Gotovoe zadanie

This commit is contained in:
2025-11-22 04:11:18 -05:00
parent 2802f365dc
commit 54d510c713

39
sort.c
View File

@@ -21,7 +21,17 @@ typedef struct {
void
insert_sort(int *arr, size_t sz)
{
// <YOURCODE>
for (size_t i = 1; i < sz; i++) {
int key = arr[i];
size_t j = i;
while (j > 0 && arr[j - 1] > key) {
arr[j] = arr[j - 1];
j--;
}
arr[j] = key;
}
}
void
@@ -33,7 +43,7 @@ bubble_sort(int *arr, size_t sz)
for (i = 0; i < sz; i++) {
for (j = i + 1; j < sz; j++) {
if (arr[i] > arr[j]) {
tmp = arr[i];
tmp = arr[i];
arr[i] = arr[j];
arr[j] = tmp;
}
@@ -67,8 +77,29 @@ bubble_sort(int *arr, size_t sz)
static void
_merge(int *tmp, int *a, int *b, int *end)
{
// <YOURCODE>
}
int a1=0, b1=0, tmp1=0;
int razmera=b-a, razmerb=end-b;
while (razmera>a1 && razmerb>b1)
{
if (a[a1]<b[b1])
{
tmp[tmp1++] = a[a1++];
}
else
{
tmp[tmp1++] = b[b1++];
}
}
while (razmera!=a1)
{
tmp[tmp1++]=a[a1++];
}
while (razmerb!=b1)
{
tmp[tmp1++]=a[b1++];
}
}
static void
_merge_sort_int(int *tmp, int *arr, size_t n)