package
0.0.0-20241225174012-7a0820eadc6a
Repository: https://github.com/chtonad0000/golang.git
Documentation: pkg.go.dev

# README

utf8reverse

Реализуйте функцию reverse.Reverse.

Функция принимает на вход юникодную строку и должна возвращать строку, состоящую из тех же юникодных рун, но записанных в обратном порядке.

Каждый байт входной строки, который не образует корректную utf8 последовательность, нужно заменить на unicode replacement character.

Обратите внимание в тестах, что некоторые графемы распадаются при обращении строки. Данный эффект связан с тем, что в юникоде некоторые руны умеют комбинироваться в одну графему.

Ваша реализация должна быть достаточно эффективна. На нашем бенчмарке в тестовой системе она должна работать не хуже авторского решения. Конкретно, можно делать не больше одной аллокации. Это значит, что кроме выходной строки дополнительную память выделять нельзя. (Изучите тип strings.Builder)

goos: linux
goarch: amd64
pkg: gitlab.com/slon/shad-go/utf8/reverse
BenchmarkReverse-4   	  395078	      2763 ns/op	    1792 B/op	       2 allocs/op
PASS

Примеры

Как запустить все тесты:

go test -v ./utf8/reverse/...

# Functions

No description provided by the author