#include <iostream>
using namespace std;
 
class Node
{
public:
    int key;
    Node * left;
    Node * right;
    Node () : key (0), left (nullptr), right (nullptr) { }
};
 
Node* find (Node* start, int value)
// ve stromu s korenem start hledame klic value
// vysledkem je ukazatel na nalezeny uzel nebo null
{
    while (start != nullptr && start->key != value)
    {
        if (value < start->key)
            start = start-> left;
        else
            start = start->right;
    }
    return start;
}
 
Node* search(Node* start, int value)
{
    if (start == nullptr)
        return nullptr;
    else if (start->key == value)
        return start;
    else if (value < start->key)
        return search (start->left, value);
    else 
        return search(start->right, value);
}
 
void insert (Node* & start, int value)
{
    if (start == nullptr)
    {
        start = new Node;
        start->key = value;
        // start->left = nullptr;
        // start->right = nullptr;
    }
    else if (start->key == value)
       {  }
    else if (value < start->key)
        insert (start->left, value);
    else
        insert (start->right, value);
}
 
void print ( Node * start, int )
 
Node* root = nullptr;
 
int main()
{
    insert(root, 10);
    insert(root, 5);
    insert(root, 20);
    insert(root, 2);
    insert(root, 7);
 
    Node * t = find(root, 7);
    if (t != nullptr) cout << "Nasel jsem" << endl;
    cout << "O.K." << endl;
}
 
strom2020ct.txt · Last modified: 2020/03/05 15:17 by 147.32.8.110
 
Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki