4 метода перевернуть строку без использования встроенных функций

Я предоставлю вам несколько способов перевернуть строку без использования каких-либо встроенных функций. Вот несколько подходов:

Метод 1: использование итерации

def reverse_string(string):
    reversed_string = ""
    for i in range(len(string) - 1, -1, -1):
        reversed_string += string[i]
    return reversed_string

Метод 2: использование рекурсии

def reverse_string(string):
    if len(string) == 0:
        return string
    else:
        return reverse_string(string[1:]) + string[0]

Метод 3. Использование двух указателей

def reverse_string(string):
    string_list = list(string)
    left = 0
    right = len(string_list) - 1
    while left < right:
        string_list[left], string_list[right] = string_list[right], string_list[left]
        left += 1
        right -= 1
    return ''.join(string_list)

Метод 4: использование алгоритма замены XOR

def reverse_string(string):
    string_list = list(string)
    left = 0
    right = len(string_list) - 1
    while left < right:
        string_list[left] = chr(ord(string_list[left]) ^ ord(string_list[right]))
        string_list[right] = chr(ord(string_list[left]) ^ ord(string_list[right]))
        string_list[left] = chr(ord(string_list[left]) ^ ord(string_list[right]))
        left += 1
        right -= 1
    return ''.join(string_list)