Форум программистов, компьютерный форум, киберфорум
Наши страницы
C# Windows Forms
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
Kseniya_Kestwel
0 / 0 / 0
Регистрация: 04.12.2016
Сообщений: 5
1

Пузырьковая сортировка

22.12.2016, 12:44. Просмотров 1003. Ответов 3
Метки нет (Все метки)

Здравствуйте,нужна помощь по пузырьковой сортировке ибо я туплю.
Вот задание:
Вводится n строк. Упорядочить и вывести строки в порядке возрастания их длин, а также (второй приоритет) значений.

Выглядит это так: Вводим в texbox строку, нажимаем кнопку "сохранить" = эта строка сохраняется в Listview,
так вводим несколько строк разных длин,далее при нажатии кнопки "Сортировка" эти строки должны сортироваться в порядке возрастания их длин (вот тут -то я и затупила) .Половину задания я сделала,с пузырьковой сортировкой разобраться не могу.

Во вложении отправляю скрин того,как это выглядит визуально.
0
Миниатюры
Пузырьковая сортировка  
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.12.2016, 12:44
Ответы с готовыми решениями:

Сортировка выбором, сортировка вставкой, сортировка заменой, сортировка обменом ("пузырьковая" сортировка)
Создать класс, содержащий массив и реализующий алгоритмы сортировки и бинарного...

Сортировка вставками или пузырьковая сортировка?
Здравствуйте! Подскажите пожалуйста, правильно ли что это код сортировки...

Пузырьковая сортировка
Написал программу сортировки методом пузырька: #include <stdio.h> #include...

Пузырьковая сортировка
Помогите плз. Работаю в Visual Studio 2010. Написал алгоритм пузырьковой...

Пузырьковая сортировка
#include <iostream> #include <fstream> using namespace std; int main()...

3
halk0812
67 / 54 / 31
Регистрация: 05.09.2013
Сообщений: 665
Завершенные тесты: 1
22.12.2016, 15:00 2
ну а что не так с сортировкой?
0
Людвиг Бодмер
356 / 355 / 211
Регистрация: 29.03.2013
Сообщений: 866
Завершенные тесты: 4
22.12.2016, 15:06 3
Лучший ответ Сообщение было отмечено Kseniya_Kestwel как решение

Решение

Kseniya_Kestwel,
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
private void button_Click(object sender, EventArgs e)
        {
            string buf;
            for (int k = listView1.Items.Count - 1; k > 0; k--)
            {
                for (int i = 0; i < k; i++)
                    if (listView1.Items[i].Text.Length > listView1.Items[i + 1].Text.Length)
                    {
                        buf = listView1.Items[i].Text;
                        listView1.Items[i].Text = listView1.Items[i + 1].Text;
                        listView1.Items[i + 1].Text = buf;
                    }
            }
        }
1
kostking
1 / 1 / 0
Регистрация: 18.12.2016
Сообщений: 5
24.12.2016, 21:45 4
Пузырьковая сортировка очень медленная, и годится только лишь как пища для ума, следовательно стоит попробовать решить своими силами. Но если хочется или надо сделать быстро и не парясь, в интернете есть куча рабочих примеров.
Например вот из первой же ссылки поиска

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
// Считываем размер массива,
            // который необходимо отсортировать
            int size;
            size = Convert.ToInt32(Console.ReadLine());
            // Динамически выделяем память под
            // хранение массива размера size
            //считываем строку
            string str = Console.ReadLine();
            //разбиваем по пробелам
            string[] mas = str.Split(' ');
            int[] a = new int [size];
            for (int i = 0; i < size; i++)
            {
                a[i] = int.Parse(mas[i]);
            }
 
            int temp;
            // Внешний цикл алгоритма совершает
            // ровно size итераций
            for (int i = 0; i < size; i++)
            {
                // Массив просматривается с конца до
                // позиции i и "легкие элементы всплывают"
                for (int j = size - 1; j > i; j--)
                {
                    // Если соседние элементы расположены
                    // в неправильном порядке, то меняем
                    // их местами
                    if (a[j] < a[j - 1])
                    {
                        temp = a[j];
                        a[j] = a[j - 1];
                        a[j - 1] = temp;
                    }
                }
            }  
 
            // Выводим отсортированный массив
            for (int i = 0; i < size; i++)
            {
                Console.Write(a[i]);
                Console.Write(' ');
            }
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.12.2016, 21:45

пузырьковая сортировка
Задача не сложная, но у меня нет времени ее решать: дан одномерный массив,...

Пузырьковая сортировка
Отсортировать положительные элементы одномерного массива, отрицательные...

Пузырьковая Сортировка
Доброго времени суток всем. Существует проблема. Некие точки на кривой...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru