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

Проверка существования структуры - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Вычислить сумму ряда http://www.cyberforum.ru/cpp-beginners/thread409992.html
.Вычислить сумму ряда \sum_{k=o }^{\propto }\left(-1{k}^{} \right)\frac{x{}^{2k}}{(2k)!} с точностью до 10 в -5 степени.Построить таблицу для х=0;0.1;0.2....0.9;1;0.Проверить значения по функции cos(х)
C++ Поразрядная сортировка Доброе время суток, написал программу поразрядной сортировки по определенному критерию должно сортировать, проблем в логике вроде бы не должно быть, но вот проблема в функции yy в том что не хватает выделения памяти для mask. даже при присвоение типа unsigned long long выходит за предел . Подскажите в чем причина и как с ней бороться #include <iostream> #include <algorithm> #include <vector>... http://www.cyberforum.ru/cpp-beginners/thread409979.html
C++ сумма диагоналей???
Вот в чем вопрос! Вроде все правильно, но сумму неправильно вычисляет, а именно нужно: Найти максимальную, из всех сумм диагоналей, параллельных главной! #include <iostream> #include <iomanip> #include <cmath> using namespace std; // Прототип для ввода двумерного массива int** inputm (int n); // Прототип для вывода двумерного массива void outputm (int** a, int n);
C++ Разработать алгоритм обработки двумерного массива
Разработать алгоритм обработки двумерного массива размера n*m. Числа m и n, а также элементы массива взять из файла. Необходимо каждый элемент массива увеличить на сумму элементов его строки. результат записать в другой файл. пожалуйста помогите очень нужно!!
C++ Абстрактны классы http://www.cyberforum.ru/cpp-beginners/thread409940.html
Здравствуйте, форумчане! у меня вот такая вот задача! Разработать класс список как абстрактный базовый класс с интерфейсом - сохранить и восстановить. Создать производные классы стек и очередь с реализованными интерфейсами восстановить и вытащить. обычные абстрактные классы у меня получается создавать! на пример на задачу : Разработать абстрактный класс - форма с интерфейсом площадь,...
C++ Упорядочить строки матрицы в порядке неубывания их первых элементов Всем привет! Помогите пожалуйста решить задачу, хз как делать :) Дана матpица A. Упорядочить строки матрицы в порядке не убывания их первых элементов. Всё чnо я смог, это вывести исходную матрицу на экран, и все :DDD Заранее спасибо ! // задача // #include "stdafx.h" #include <stdlib.h> #include <stdio.h> подробнее

Показать сообщение отдельно
CyBOSSeR
Эксперт C++
2300 / 1670 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
18.12.2011, 00:45     Проверка существования структуры
awpe, Вы не совсем понимаете как строятся деревья. На википедии есть неплохие статьи по двоичным деревьям. Вот пример дерева поиска с функцией вставки и обхода, реализованных посредством рекурсии:
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
72
73
#include <stdlib.h>
#include <stdio.h>
 
typedef struct tree {
    int data;
    struct tree* left;
    struct tree* right;
} tree_t;
 
tree_t* create(int data) {
  tree_t* result = (tree_t*)malloc(sizeof(tree_t));
 
  result->data = data;
  result->left = NULL;
  result->right = NULL;
 
  return result;
}
 
void destroy(tree_t* tree) {
  if (tree == NULL)
    return;
 
  destroy(tree->left);
  destroy(tree->right);
  free(tree);
}
 
tree_t* insert(tree_t* tree, int data) {
  if (tree == NULL)
    return create(data);
 
  if (tree->data < data)
    tree->left = insert(tree->left, data);
  else if (tree->data > data)
    tree->right = insert(tree->right, data);
  
  return tree;
}
 
void traverse(tree_t* tree, void (*function)(int)) {
  if (tree == NULL)
    return;
 
  traverse(tree->left, function);
  function(tree->data);
  traverse(tree->right, function);
}
 
void print(int number) {
  printf("%d\n", number);
}
 
int main() {
  tree_t* tree = create(5);
 
  insert(tree, 4);
  insert(tree, 6);
  insert(tree, 3);
  insert(tree, 7);
  insert(tree, 2);
  insert(tree, 8);
  insert(tree, 1);
  insert(tree, 9);
  insert(tree, 0);
  insert(tree, 10);
 
  traverse(tree, print);
 
  destroy(tree);
 
  return 0;
}
Результат: http://liveworkspace.org/code/7cb333...ac11831d1145a9
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru