Ejemplo n.º 1
0
int main()
{
    unsigned int x, y, result;

    printf("Please enter a number : ");
    scanf("%d", &x);

    printf("How to much to right-shift? ");
    scanf("%d", &y);

    result = rightRot(x, y);

    printf("The number shifted by %u is %u\n", y, result);
}
Ejemplo n.º 2
0
NodeT* insertNode(NodeT* node, int data)
{
    if (node == NULL) return(createNode(data));
    else if (data < node->data)
        node->left  = insertNode(node->left, data);
    else
        node->right = insertNode(node->right, data);
        node->height = max(findHeight(node->left), findHeight(node->right))+1;
    int bal=getBalance(node);
    if (bal>1 && data < node->left->data)  return rightRot(node);
    if (bal<-1 && data>node->right->data)  return leftRot(node);
    if (bal>1 && data>node->left->data)
        {
        node->left =leftRot(node->left);
        return rightRot(node);
        }
    if (bal<-1 && data<node->right->data)
        {
        node->right =rightRot(node->right);
        return leftRot(node);
        }
    return node;
}