Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 29.11.2015
Сообщений: 19
1

Сортировка строк. Физика процесса

13.03.2016, 23:34. Показов 392. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите, пожалуйста, разобраться в физике процесса сортировки строк.

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
void sortByLexicography(char **words, unsigned **infoMas, unsigned size)
{
        char *bufChar;
        for(unsigned i=0;i<size;i++)
        {
            for(unsigned j=0;j<size;j++)
            {
                if(strcmp(words[j], words[i])>0)
                {
                    bufChar=words[i];
                    words[i]=words[j];
                    words[j]=bufChar;
                }
            }
        }
}
У нас есть две области памяти, хранящие слова. Когда мы выполняем присваивание bufChar=words[i], то что физически мы кладем в bufChar ? В этой части кода происходит просто обмен ссылками, при этом сами значения как лежали в своих областях памяти, так и продолжают лежать?
C
1
2
3
bufChar=words[i];
words[i]=words[j];
words[j]=bufChar;
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.03.2016, 23:34
Ответы с готовыми решениями:

Сортировка строк по убыванию сумм элементов строк
Я рандомно задал массив M x N: #include &lt;stdio.h&gt; #include &lt;time.h&gt; #include &lt;conio.h&gt; #define...

Численные методы / физика / сортировка массивов и файлов
к сожалению не усвоила фортран на том уровне, что с нас требуют &gt;.&lt; поэтому, прошу помощи в решении...

Порождение процесса и сортировка
Нужно породить процесс и в нем отсортировать значения утилитой sort. Пишу: #include &lt;stdio.h&gt;...

Сортировка строк матрицы по возрастанию произведения четных элементов строк
Доброго времени форумчане....нужна ваша помощь в доработке программы.... Вот условие... Дана...

2
Вездепух
Эксперт CЭксперт С++
11694 / 6373 / 1723
Регистрация: 18.10.2014
Сообщений: 16,057
14.03.2016, 00:08 2
Цитата Сообщение от geniuss7 Посмотреть сообщение
У нас есть две области памяти, хранящие слова.
О каких двух областях памяти идет речь?

Цитата Сообщение от geniuss7 Посмотреть сообщение
В этой части кода происходит просто обмен ссылками, при этом сами значения как лежали в своих областях памяти, так и продолжают лежать?
Да, именно так. Т.е. массив words это фактически "индексный" массив, т.е. массив указателей на начала строк. И именно эти указатели мы и переупорядочиваем. Сам строки никто не трогает (если не считать сравнения в strcmp(words[j], words[i])). Где эти строки лежат в памяти - не имеет значения.

P.S. Зачем в функцию передается параметр infoMas - не ясно. Он не используется.
2
0 / 0 / 0
Регистрация: 29.11.2015
Сообщений: 19
14.03.2016, 00:46  [ТС] 3
Цитата Сообщение от TheCalligrapher Посмотреть сообщение
Зачем в функцию передается параметр infoMas - не ясно. Он не используется.
Эта функция более сложная на самом деле, просто убрал все лишнее, чтобы Вам не пришлось разбираться в ненужной информации. Просто забыл убрать параметр в заголовке функции

Спасибо большое за помощь!)
0
14.03.2016, 00:46
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.03.2016, 00:46
Помогаю со студенческими работами здесь

Сортировка строк с суммированием чисел только выбранных строк
Наглядное условие в примере в прикрепленном файле. Как сделать сортировку построчно, при этом...

Реализация процесса создания новых объектов и их сортировка?
Надо написать консольную прилогу. Формат взаимодействия с пользователем максимально простой не в...

Добавление новых строк в среду процесса
Привет всем! Столько литературы уже перечитал и всё не как не могу с мёртвой точки сдвинуться. Не...

Сортировка первого элемента строк в массиве строк
Есть файл, в нём подобная структура: 12 fas fksk ksksk sksk 15 ldl kska kskd kfkf 9 kaka kskd...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru