avp26/fullu_2.py
2026-10-01 12:01:14 +00:00

57 lines
1.1 KiB
Python

def append(list1, list2):
result = []
for item in list1 :
result = result + [item]
for item in list2 :
result = result + [item]
return result
def concat(lists):
result = []
for sublist in lists:
result = append(result, sublist)
return result
def filter(function, list):
result = []
for item in list:
if function(item):
result += [item]
return result
def length(list):
count = 0
for _ in list:
count += 1
return count
def map(function, list):
result = []
for item in list:
result += [function(item)]
return result
def foldl(function, list, initial):
accumulator = initial
for item in list:
accumulator = function(accumulator, item)
return accumulator
def foldr(function, list, initial):
accumulator = initial
index = length(list) - 1
while index >= 0:
accumulator = function(accumulator, list[index])
index -= 1
return accumulator
def reverse(list):
result = []
for item in list:
result = [item] + result
return result