(*)~changed up makefile recipes, cleaned up README
This commit is contained in:
2
.gitignore
vendored
Normal file
2
.gitignore
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
*.out
|
||||
*.fasl
|
||||
13
Makefile
13
Makefile
@@ -1,11 +1,14 @@
|
||||
CC=clang++
|
||||
CFLAGS=-pedantic -Wall -ggdb
|
||||
CFLAGS=-pedantic -Wall -ggdb -fsanitize=address
|
||||
VFLAGS=--show-leak-kinds=all --leak-check=full
|
||||
OUT=
|
||||
|
||||
$(OUT): $(OUT).cpp
|
||||
$(OUT).out: $(OUT).cpp
|
||||
$(CC) $(CFLAGS) $^ -o $@
|
||||
|
||||
.PHONY: memcheck
|
||||
memcheck: $(OUT)
|
||||
valgrind $(VFLAGS) ./$^;
|
||||
.PHONY: run
|
||||
run: $(OUT).out
|
||||
./$^
|
||||
|
||||
.PHONY: clean
|
||||
rm -v *.out;
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
#+title: Algorithms
|
||||
#+author: Aryadev Chavali
|
||||
|
||||
Common algorithms in C/C++/Python depending on which one is the
|
||||
nicest/makes the most sense to use. This will include random maths
|
||||
stuff as well, such as making supporting mechanisms for, say, the use
|
||||
of group semantics.
|
||||
Common algorithms and data structures, written in any language I
|
||||
want. Currently there's an implementation for binary trees and singly
|
||||
linked lists in C++.
|
||||
|
||||
27
list.cpp
27
list.cpp
@@ -107,26 +107,33 @@ int main(void)
|
||||
std::cout << lst << std::endl;
|
||||
puts("Reverse list again...");
|
||||
printf("Map list with f(x) = 2x: ");
|
||||
map<int, int>(lst = reverse(lst), [](int x) {
|
||||
return x * 2;
|
||||
});
|
||||
map<int, int>(lst = reverse(lst),
|
||||
[](int x)
|
||||
{
|
||||
return x * 2;
|
||||
});
|
||||
std::cout << lst << std::endl;
|
||||
puts("Reverse map...");
|
||||
map<int, int>(lst, [](int x) {
|
||||
return x / 2;
|
||||
});
|
||||
map<int, int>(lst,
|
||||
[](int x)
|
||||
{
|
||||
return x / 2;
|
||||
});
|
||||
printf("Sum all numbers in list: ");
|
||||
std::cout << reduce<int>(
|
||||
lst,
|
||||
[](int a, int b) {
|
||||
[](int a, int b)
|
||||
{
|
||||
return a + b;
|
||||
},
|
||||
0)
|
||||
<< std::endl;
|
||||
printf("Print all even numbers 1..10: ");
|
||||
auto evens = filter<int>(lst, [](int a) {
|
||||
return a % 2 == 0;
|
||||
});
|
||||
auto evens = filter<int>(lst,
|
||||
[](int a)
|
||||
{
|
||||
return a % 2 == 0;
|
||||
});
|
||||
std::cout << evens << std::endl;
|
||||
delete lst;
|
||||
delete evens;
|
||||
|
||||
Reference in New Issue
Block a user