[i]Люди до сих пор верят в превосходство списков по скорости[/i] - об этом речь не шла. речь шла о правильности алгоритма.Очевидно, что если мне нужен какой-то алгоритм, то я сделаю именно этот алгоритм.
[i]"Не требуется знаний", ага, угу. Точно-точно[/i] - это не имеет отношения к поднятому вопросу и я не готов обсуждать квалификацию и сложившиеся обстоятельства, которые привели в такому положению дел.
Вполне себе может быть, горели сроки и надо было срочно делать большой объем работы, при этом не хотелось бросать в подвешенном состоянии какую-то проблему - не удивительно, что какое-то вещи были плохо проверены.
[i]Или тебе хочется исключительно safe-кодом?[/i] - нет. зачем мне safe, когда я об этом не просил?
[i]потому что поймёшь, что он бред.[/i] - я проверил. возможно и работает. плохо, что пользоваться неудобно. а так - связный список, обернутый в MaybeUninit обернуты во wrapper. Если допилят unnamed fields и добавят существующие возможности nightly в stable станет гораздо лучше.
[i]очень хорошо работает с std[/i] - часть функциональности, реализованная в std требует nighly для сборки. И да, естественно, я прочел всё, что смог найти по данному вопросу.
[i]Например, в C, работая со строками, ты будешь жонглировать ими как массивами байтов[/i] - в Си нет массивов, как таковых. там только указатели. в целом в си очень простая и ограниченная функциональность. даже области видимости фактически только в полях структур.
[i]То же самое работает с указателями: в C ты указатель проверяешь на NULL в рандомных местах программы[/i] - только в тех местах, где это нужно. где не нужно - не проверяю.
[i]в rust'е ты проверяешь raw-указатель на NULL[/i] - в rust я смотрел disasm - можно точно также сделать, чтобы он без проверки всё, что надо преобразовал. фактически можно точно также работать с сырой памятью как и в С. муторней только. хотелось бы, чтобы попроще что-ли как-то.
[i]Поэтому, пока ты мыслишь сями[/i] - еще раз повторяю, никто с не думает. на С просто реализовывать любые алгоритмы. хотя и не все - часть проще писать на asm.
[i]когда ты пользуешься уже готовыми реализациями этих алгоритмов и структур данных[/i] - я привык начинать с начала, а не с середины. начало в моем понимании это то, что Вы называете алгоритмами из учебника.