diff --git a/u2/list_ops.py b/u2/list_ops.py index a61fa17..aa43a46 100644 --- a/u2/list_ops.py +++ b/u2/list_ops.py @@ -2,6 +2,60 @@ def length(list): count = 0 for item in list: count +=1 - return count + return count + + +def append(list1, list2): + result = [] + for item in list1: + result.append(item) + for item in list2: + result.append(item) + return result + + +def concat(lists): + result = [] + for box in lists: + for item in box: + result.append(item) + return result + + +def filter(function, list): + result = [] + for item in list: + if function(item): + result.append(item) + return result + + +def map(function,list): + result = [] + for item in list: + result.append(function(item)) + return result + + +def reverse(list): + result = [] + for item in list: + result = item + result + return result + + +def foldl(function,list,initial): + accamulator = initial + for item in list: + accamulator = fucntion(accamulator, item) + return accamulator + + +def foldr(function,list,initial): + return foldl(function,reverse.(list),initial) + + + + + - \ No newline at end of file