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

кольцевой список. STL - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Найти сумму элементов массива с нечетными номерами http://www.cyberforum.ru/cpp-beginners/thread298753.html
помогите пожалуйста с задачей! В одномерном массиве, состоящем из n вещественных элементов, вычислить: 1) сумму элементов массива с нечетными номерами; 2) сумму элементов массива, расположенных между первым и последним отрицательными элементами. Сжать массив, удалив из него все элементы, модуль которых не превышает 1. Освободившиеся в конце массива элементы заполнить нулями. вот что...
C++ Не работает цикл!!! Help!!!!! Почему не считает цикл... опять где-то ошибся #include<conio.h> #include<stdio.h> #include<math.h> #include<iostream> using namespace std; int main() { int schet=1, pered; http://www.cyberforum.ru/cpp-beginners/thread298738.html
C++ Не знаю как исправить ошибку в программе
Добрый день. Вот код программы: #pragma argsused #include <iostream.h> #include <time.h> #include <conio.h> void insert (int *a, int n) // ФУНКЦИЯ ВСТАВОК { int i, j, t; // объявление переменных for (i=1; i<n; i++)
Точка лежит ли в кольце окружности C++
Всем привет.Подскажите пожалуйста где здесь ошибка. #include <windows.h> #include<iostream> using namespace std; void main () {SetConsoleOutputCP(1251); int y,z,x,c,a,b,n,m,k; cout<<"Введите кординаты точки А"<<endl; cin>>y;
C++ Использование возвращенного двумерного массива. http://www.cyberforum.ru/cpp-beginners/thread298715.html
Доброго времени суток. Проблема такая. int *roc(int a) { //тут преобразования return *a; } void main
C++ Сдвиг перестановки. Сдвиг перестановки (Время: 1 сек. Память: 16 Мб Сложность: 24%) Перестановкой порядка n называется последовательность из попарно различных целых положительных чисел p1, p2, ... , pn, где каждое 1 <= pi <= n. Будем говорить, что перестановка q1, q2, ... , qn лексикографически меньше перестановки p1, p2, . . . , pn, если существует такое i, что qi < pi, а для любого j < i pj = qj . ... подробнее

Показать сообщение отдельно
lemegeton
2917 / 1346 / 133
Регистрация: 29.11.2010
Сообщений: 2,720
18.05.2011, 18:28     кольцевой список. STL
Добавьте "промежуточный" элемент между началом и хвостом, который и будет считаться за списком. Таким, кстати, образом, Вы сможете так же обеспечить декремент итератора, находящегося за концом списка.

Что-то вроде:
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
#include <iostream>
 
struct ListNodeBase {
  ListNodeBase *next;
  ListNodeBase *prev;
};
 
template <class ValueType>
struct ListNode : public ListNodeBase {
  ValueType data;
};
 
template <class T>
class DList {
 public:
  DList() {
    node_.next = &node_;
    node_.prev = &node_;
  }
  Iterator begin() { return node_.next; }
  Iterator end() { return &node_; }
 private:
  ListNodeBase node_;
};
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru