Пример #1
0
def deleteInRangeMenu(linked_list: Linked_list):
    beforeList = copy.deepcopy(linked_list)
    print(f"From 0 to {len(linked_list) - 1}")
    l, r = v.int_validate_range()
    linked_list.remove_in_range(l, r)
    Event.do_some('deleteInRange', [beforeList, [l, r], linked_list])
    return linked_list
Пример #2
0
def deleteAtMenu(linked_list: Linked_list, lname: str, position: int):
    print('Thread {}  : starting 🍺'.format(lname[1]))
    beforeList = copy.deepcopy(linked_list)
    linked_list.remove_at(position)
    Event.do_some('delete', [beforeList, position, linked_list, lname])
    print('Thread {}  : finishing 🍻'.format(lname[1]))
    return linked_list
Пример #3
0
def deleteInRangeMenu(linked_list: Linked_list, lname: str, pos):
    print('Thread {}  : starting 🍺'.format(lname[1]))
    beforeList = copy.deepcopy(linked_list)
    linked_list.remove_in_range(pos[0], pos[1])
    Event.do_some('deleteInRange',
                  [beforeList, [pos[0], pos[1]], linked_list, lname])
    print('Thread {}  : finishing 🍻'.format(lname[1]))
    return linked_list
Пример #4
0
 def do_algorithm(self, l: Linked_list, position: int):
     newList = copy.deepcopy(l)
     j = 0
     n = v.enterInteger("Enter n: ")
     itSm = iter(Smith())
     for i in range(n):
         data = next(itSm)
         l.insert(position + j, data)
         j += 1
     Event.do_some('add', [newList, position, l])
     return l
 def do_algorithm(self, l: Linked_list, position: int, lname: str):
     file_name = self.__enter_file_name()
     temp, j = self.__readFile(file_name), 0
     newList = copy.deepcopy(l)
     if len(l) == 0:
         l = temp
     else:
         for i in temp:
             l.insert(position + j, i)
             j += 1
     Event.do_some('add', [newList, position, l, lname])
     return l
Пример #6
0
def listMethodMenu(linked_list: Linked_list):
    beforeList = copy.deepcopy(linked_list)
    l, r = linked_list.min_max(linked_list)
    j = 1
    if r < l:
        temp = l
        l = r
        r = temp

    print(f'left index - {l}, \nright index - {r}')
    for i in range((r - l) // 2):
        temp = linked_list.get_at(l + j)
        linked_list.set_at(l + j, linked_list.get_at(r - j))
        linked_list.set_at(r - j, temp)
        j += 1
    Event.do_some('taskMethod', [beforeList, [l, r], linked_list])
    return linked_list
Пример #7
0
def listMethodMenu(linked_list: Linked_list, lname: str, position=0):
    print('Thread {}  : starting 🍺'.format(lname[1]))
    beforeList = copy.deepcopy(linked_list)
    l, r = linked_list.min_max(linked_list)
    j = 1
    if r < l:
        temp = l
        l = r
        r = temp

    for i in range((r - l) // 2):
        temp = linked_list.get_at(l + j)
        linked_list.set_at(l + j, linked_list.get_at(r - j))
        linked_list.set_at(r - j, temp)
        j += 1
    Event.do_some('taskMethod', [beforeList, [l, r], linked_list, lname])
    print('Thread {}  : finishing 🍻'.format(lname[1]))
    return linked_list
Пример #8
0
def deleteAtMenu(linked_list: Linked_list):
    beforeList = copy.deepcopy(linked_list)
    position = v.intValidateInRange('Enter position', 0, len(linked_list) - 1)
    linked_list.remove_at(position)
    Event.do_some('delete', [beforeList, position, linked_list])
    return linked_list