Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.91
viktorrrr
45 / 47 / 4
Регистрация: 11.02.2010
Сообщений: 375
#1

Программная реализация динамического списка динамических списков - C++

18.02.2011, 15:44. Просмотров 1464. Ответов 2
Метки нет (Все метки)

Обучаюсь удаленно через интернет. И тут такая штука. Случайно нажал кнопку "Сдать курсовую". А темы я даже еще не изучал по программированию. Только самое начало. Тема курсовой "Программная реализация динамического списка динамических списков" И теперь не знаю, на что обратить внимание. Что изучать-то в конце концов?))) ГДе про это может быть написано? Может, кто учебники подскажет или темы, на которые сейчас мне надо обратить внимание. Задание надо делать на С++
http://www.cyberforum.ru/cpp-beginners/thread148419.html
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.02.2011, 15:44
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Программная реализация динамического списка динамических списков (C++):

Программирование динамических списков
Написать программу, в которой реализовать создания динамического списка с...

Динамический список динамических списков
Всем экспертам привет. Нужна категорическая помощь). Задача такая, надо...

Стек-массив динамических списков
Препод домашку такую дал. Боюсь неправильно его понять) Каким образом его...

Программная реализация очереди
Друзья, подскажите, почему не правильно работает программа, ругается на функцию...

Программная реализация номограммы
Сейчас пишу одну модель программно, в нее входят разные формулы для ее расчета,...

2
dyosick
62 / 62 / 17
Регистрация: 25.08.2008
Сообщений: 178
18.02.2011, 16:55 #2
Я б Вам посоветовал Дейтел "Как программировать на С++" 5 изд. Там есть в 20 главе "Структуры данных" реализация списка. Еще можно посмотреть Кормен, Лейзерсон, Ривест "Алгоритмы. Построение и анализ".
Желаю удачи!!!
1
lemegeton
2933 / 1362 / 467
Регистрация: 29.11.2010
Сообщений: 2,725
18.02.2011, 23:38 #3
Лучший ответ Сообщение было отмечено viktorrrr как решение

Решение

Классы, шаблоны классов, указатели.
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
template <class Tp_>
class List {
 public:
  typedef Tp_  ValueType;
  class Node {
   public:
    explicit Node(ValueType data, Node *prev = NULL,
             Node *next = NULL) : next_(next), prev_(prev), data_(data) {
      if (prev_ != NULL) prev_->next_ = this;
      if (next_ != NULL) next_->prev_ = this;
    }
    ValueType &data() { return data_; }
    void  data(const ValueType &data) { data_ = data; }
    Node *next() { return next_; }
    void  next(Node *value) { next_ = value; }
    Node *prev() { return prev_; }
    void  prev(Node *value) { next_ = value; }
    operator ValueType() { return data_; }
   private:
    Node *next_;
    Node *prev_;
    ValueType data_;
  };
  List() : first_(NULL), size_(0) {}
  ~List() { Clear(); }
  void Clear() {
    if (first_ == NULL) return;
    Node *next;
    while (first_ != NULL) {
      next = first_->next();
      delete first_;
      first_ = next;
    }
    size_ = 0;
  }
  int Size() const { return size_; }
  void PushFront(const ValueType &value) {
    Node *new_node = new Node(value, NULL, first_);
    first_ = new_node;
    ++size_;
  }
  void PushBack(const ValueType &value) {
    Node *last_node = LastNode();
    Node *new_node = new Node(value, last_node, NULL);
    if (first_ == NULL) first_ = new_node;
    ++size_;
  }
  ValueType &operator[](int n) {
    return GetNode(n)->data();
  }
 private:
  Node *GetNode(int n) {
    Node *result = first_;
    while (n-- > 0) result = result->next();
    return result;
  }
  Node *LastNode() {
    Node *result = first_;
    while (result != NULL && result->next() != NULL)
      result = result->next();
    return result;
  }
  Node *first_;
  size_t size_;
};
 
int main(int argc, char *argv[]) {
  List< List<int> > a; \\ двусвязный список двусвязных списков целых
 
  return 0;
}
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.02.2011, 23:38
Привет! Вот еще темы с решениями:

Таблица перекрестных ссылок на основе использования динамических списков и деревьев
Составить таблицу перекрестных ссылок. Программа читает текст и собирает все...

Программная реализация задач на множествах
Здравствуйте! помогите пожалуйста написать задачу в С++ на тему :Программная...

Программная реализация древесной сортировки
Программная реализация древесной сортировки Указания: - использовать...

Программная реализация алгоритма Khufu
Люди,не могу найти программную реализацию по алгоритму khufu мб знает кто как...


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

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

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