This commit is contained in:
2026-03-30 10:57:41 +02:00
commit 9f048eecc7
13 changed files with 203 additions and 0 deletions
+11
View File
@@ -0,0 +1,11 @@
*.a
*.lib
*.o
*.obj
*.out
.idea/
*~
*.DotSettings.user
*.gz
*.html
@@ -0,0 +1,46 @@
#include "basics.h"
struct list *list_append(struct list *l, int e)
{
//FIXME
}
size_t list_count(struct list *l)
{
//FIXME
}
int list_insert(struct list **l, size_t index, int e)
{
}
struct list *list_get(struct list *l, size_t index)
{
//FIXME
}
struct list *list_find(struct list *l, int e)
{
//FIXME
}
struct list *list_delete_at(struct list **l, size_t index)
{
//FIXME
}
int list_remove(struct list **l, int e)
{
//FIXME
}
void list_destroy(struct list *l)
{
//FIXME
}
void list_print(struct list *l)
{
//FIXME
}
@@ -0,0 +1,17 @@
#ifndef BASICS_H
#define BASICS_H
#include <stddef.h>
#include "../../utils/lists.h"
struct list *list_append(struct list *l, int e);
size_t list_count(struct list *l);
int list_insert(struct list **l, size_t index, int e);
struct list *list_get(struct list *l, size_t index);
struct list *list_find(struct list *l, int e);
struct list *list_delete_at(struct list **l, size_t index);
int list_remove(struct list **l, int e);
void list_destroy(struct list *l);
void list_print(struct list *l);
#endif /* !BASICS_H */
@@ -0,0 +1,26 @@
#include "double.h"
struct dlist *dlist_append(struct dlist *l, int e)
{
//FIXME
}
int dlist_insert(struct dlist **l, size_t index, int e)
{
//FIXME
}
struct dlist *dlist_delete_at(struct dlist **l, size_t index)
{
//FIXME
}
int dlist_remove(struct dlist **l, int e)
{
//FIXME
}
void dlist_print(struct dlist *l)
{
//FIXME
}
@@ -0,0 +1,13 @@
#ifndef DOUBLE_H
#define DOUBLE_H
#include <stddef.h>
#include "../../utils/lists.h"
struct dlist *dlist_append(struct dlist *l, int e);
int dlist_insert(struct dlist **l, size_t index, int e);
struct dlist *dlist_delete_at(struct dlist **l, size_t index);
int dlist_remove(struct dlist **l, int e);
void dlist_print(struct dlist *l);
#endif /* !DOUBLE_H */
@@ -0,0 +1,11 @@
#include "practice.h"
int is_palindrome(struct dlist *l)
{
//FIXME
}
struct list *reverse(struct list *l)
{
//FIXME
}
@@ -0,0 +1,9 @@
#ifndef PRACTICE_H
#define PRACTICE_H
#include "../../utils/lists.h"
int is_palindrome(struct dlist *l);
struct list *reverse(struct list *l);
#endif /* !PRACTICE_H */
@@ -0,0 +1,11 @@
#include "advanced.h"
struct list *add_two_lists(struct list *l1, struct list *l2)
{
//FIXME
}
struct list *rotate_list(struct list *l, int k)
{
//FIXME
}
@@ -0,0 +1,9 @@
#ifndef ADVANCED_H
#define ADVANCED_H
#include "../../utils/lists.h"
struct list *add_two_lists(struct list *l1, struct list *l2);
struct list *rotate_list(struct list *l, int k);
#endif /* !ADVANCED_H */
@@ -0,0 +1,21 @@
#include "sort.h"
struct dlist *insertion_sort(struct dlist *l)
{
//FIXME
}
void split(struct list *l, struct list **list_l, struct list **list_r)
{
//FIXME
}
struct list *merge(struct list *left, struct list *right)
{
//FIXME
}
struct list *merge_sort(struct list *l)
{
//FIXME
}
@@ -0,0 +1,11 @@
#ifndef SORT_H
#define SORT_H
#include "../../utils/lists.h"
struct dlist *insertion_sort(struct dlist *l);
void split(struct list *l, struct list **list_l, struct list **list_r);
struct list *merge(struct list *left, struct list *right);
struct list *merge_sort(struct list *l);
#endif /* !SORT_H */
+17
View File
@@ -0,0 +1,17 @@
#ifndef LISTS_H
#define LISTS_H
#include <stddef.h>
struct list {
struct list *next;
int data;
};
struct dlist {
struct dlist *next;
struct dlist *prev;
int data;
};
#endif /* !LISTS_H */
+1
View File
@@ -0,0 +1 @@
https://www.youtube.com/watch?v=aG0-NM2NhUw