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

Функция unique для list - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Многопоточные функции http://www.cyberforum.ru/cpp-beginners/thread1637595.html
Написал программу, которая обрабатывает большой объём информации и столкнулся с проблемой производительности. Начал копать в сторону многопоточности, но есть несколько вопросов, ответ на которые не...
C++ Матрица инцидентности, граф Привет всем. Очень прошу вас написать маленькую прогу на C++. Задача: По матрице инцидентности составить программу, которая проверяет - есть путь из такой-то вершины в такую-то или нет. Входные... http://www.cyberforum.ru/cpp-beginners/thread1637570.html
Есть ли аналог remove_if для соседних элементов? C++
Задача такая. Пусть есть упорядоченный набор натуральных чисел. Пример: (15, 10, 3, 9, 7, 8, 2). Наборы элементов (15, 10) (10, 3) (3, 9) (9, 7) (7, 8) (8, 2) являются соседними. В наборе (3, 9) и...
C++ Найти сумму всех натуральных чисел в заданном диапазоне
Доброе всем, время суток. Есть задачка на одном известном сайте. Нужно из одного файла взять целое число и посчитать сумму от единицы до конца числа, число может быть и отрицательным. Я тут нашел...
C++ В двухмерном массиве сдвинуть ячейки влево вправо / вверх вниз http://www.cyberforum.ru/cpp-beginners/thread1637521.html
Добрый день. Вот текст задачи: Создайте двухмерный массив. Заполните его случайными числами и покажите на экран. Пользователь выбирает количество сдвигов и положение (влево, вправо, вверх, вниз)....
C++ Нюансы синтаксиса: что означает данная запись Всем привет! VS2010, консольный проект C++. По ошибке написал: int b = (5, 4, 11, 56, 18, 0); IntSet is2(n, (5, 4, 11, 56, 18, 0)); IntSet - класс, конструктор которого во втором параметре... подробнее

Показать сообщение отдельно
FortranDLL
0 / 0 / 0
Регистрация: 05.03.2014
Сообщений: 94
13.01.2016, 13:46  [ТС]
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
// list::unique
#include <iostream>
#include <cmath>
#include <list>
 
// a binary predicate implemented as a function:
bool same_integral_part (double first, double second)
{ return ( int(first)==int(second) ); }
 
// a binary predicate implemented as a class:
struct is_near {
  bool operator() (double first, double second)
  { return (first-second<5.0); }
};
 
int main ()
{
  double mydoubles[]={ 12.15,  2.72, 73.0,  12.77,  3.14,
                       12.77, 73.35, 72.25, 15.3,  72.25 };
  std::list<double> mylist (mydoubles,mydoubles+10);
  
  mylist.sort();             //  2.72,  3.14, 12.15, 12.77, 12.77,
                             // 15.3,  72.25, 72.25, 73.0,  73.35
 
  mylist.unique();           //  2.72,  3.14, 12.15, 12.77
                             // 15.3,  72.25, 73.0,  73.35
 
  mylist.unique (same_integral_part);  //  2.72,  3.14, 12.15
                                       // 15.3,  72.25, 73.0
 
  mylist.unique (is_near());           //  2.72, 12.15, 72.25
 
  std::cout << "mylist contains:";
  for (std::list<double>::iterator it=mylist.begin(); it!=mylist.end(); ++it)
    std::cout << ' ' << *it;
  std::cout << '\n';
 
  return 0;
}
А можете пояснить на примере структуры is_near как это можно реализовать?
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru