Форум программистов, компьютерный форум CyberForum.ru

Сортировка в двунаправленном списке - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Описание класса с именем PERSON http://www.cyberforum.ru/cpp-beginners/thread760976.html
Описание класса. Запишите описание класса с именем PERSON, содержащего следующие поля: фамилия и инициалы; дата рождения (массив из трех чисел); адрес. Скройте элементы-данные от пользователя, предоставив интерфейс доступа к полям посредством открытых методов (предусмотрите объявление двух методов, один из которых присваивает значения полям класса, а другой – выводит...
C++ Массивы указателей #include "stdafx.h" #include "stdlib.h" #include "locale.h" #include "stdio.h" void p1(float &); void p2(float &); void p3(float &); void p4(float &); void p5(float &); void p6(float &); http://www.cyberforum.ru/cpp-beginners/thread760975.html
C++ Вывести в файл все «слова», состоящие только из цифр
3. С клавиатуры вводятся «слова», разделенные пробелами, последовательность слов заканчивается точкой. Вывести в файл все «слова», состоящие только из цифр (числа), если в начале стоят нули, их убрать.
C++ Создайте класс для хранения и обработки последовательности целых чисел произвольной длины
2. Создайте класс для хранения и обработки последовательности целых чисел произвольной длины. В классе должны быть методы для вычисления среднего арифметического, количества минимальных элементов, количества положительных чисел, удаления повторяющихся чисел, добавления числа в последовательность, упорядочивания последовательности по убыванию, вывода на экран в виде таблицы, с заданным количеством...
C++ Бинарный файл структур http://www.cyberforum.ru/cpp-beginners/thread760959.html
Не могу привести код в рабочее состояние.. Есть два бинарных файла, нужно найти данные с первого и записать во второй. Ошибка скорее всего в функции поиска, может кто-то помочь исправить? /* 14. Дан файл f, содержащий сведения об игрушках: указывается название игрушки (например, кукла, кубики, мяч, конструктор, и т.д.), ее стоимость в копейках и возрастные границы детей (от двух до пяти...
C++ Избавиться от 0 на главной и побочной диагоналях квадратной матрицы В заданной квадратной матрице значения некоторых диагональных элементов равны 0. Переставить строки или столбцы матрицы так, чтобы диагональные элементы стали ненулевыми. В другом случае вывести уведомление о невозможности. Сам пытался сделать, но вышло крайне коряво. Может сможет кто-то помочь. #include <iostream> #include <time.h> using namespace std; int m; подробнее

Показать сообщение отдельно
Igor3D
792 / 409 / 33
Регистрация: 01.10.2012
Сообщений: 2,066
14.01.2013, 19:41     Сортировка в двунаправленном списке
Цитата Сообщение от IraDiz Посмотреть сообщение
а можно это кодом описать если не сложно , просто в си я не силен ... буду очень признателен
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
// functor
bool MyComp( Node * n1, Node * n2 )
{
 return n1->data < n2->data;
}
 
void List<T>::Sort( void )
{
 size_t count = Size();
 if (count < 2) return;
 Node ** temp = new Node * [count];
 
// fill array
 size_t num = 0;
 while (head) {
    temp[num++] = head;
    head = head->next;
 }
 
// sort
  std::sort(temp, temp + count, MyComp);
 
// set links
  head = temp[0];
  for (size_t i = 0; i < count; ++i) {
    temp[i]->next = (i < count - 1) ? temp[i + 1] : 0; 
    temp[i]->prev = (i > 0) ? temp[i - 1] : 0; 
  }
 
// get rid of temp 
  delete [] temp; 
}
 
size_t List<T>::Size( void ) const
{
 size_t num = 0;
 const Node * n = head;
 while (n) {
  ++num;
  n = n->next;
 }
 return num;
}
 
Текущее время: 22:07. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru