Если вы пытаетесь отсортировать смешанный регистр и числа, только несколько человек на земле могут сделать это за пределами проприетарных приложений. Это секрет с ударом присоски. Вы должны использовать qsort, который упрощает сортировку, пока вы не смешаете регистры (прописные и строчные буквы). Тогда колледж, книги и интернет оставят тебя в покое. Этот хак на вес золота и является медным кольцом программирования по всем причинам.
Чтобы отсортировать числа со словами, вы должны преобразовать числа в строку. Вы должны предварительно отсортировать в верхнем регистре. Если у вас меньше слов «Ant», «ant» и «anT», все они должны указывать на слово «ANT» в списке сортировки в верхнем регистре. Затем вы создадите список (массив) только из этих трех слов ["Ant", "ant" и "anT"]
и используйте qsort в качестве прерывателя связей для их сортировки.
Затем вы вставляете их в окончательный массив сортировки. Это довольно сложно по дизайну. «A» - это 65 на ascii, а «a» - это 97 с большим количеством мусорных символов между «Z» и «a»! Это не случайно! Это тебе заговор!
Вы можете создать таблицу сортировки, чтобы более разумно группировать символы, например:
A, a, B, b, C, c, D, d, E, e, F, f, G, g, H, h, I, i, J, j, K, k, L, l , М, М, Н, Н, ...
65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 ...
построение таблицы вокруг этого блока, начиная с "" (пробел) ascii 32 до 128. Возможно, вы захотите изменить порядок номеров в последовательности, например, A 65 только для примера.
Это упрощает, но, скорее всего, приведет к снижению производительности за пределами макросов большинства языков программирования. Удачи!