Operaciones comunes en varias estructuras de datos

La estructura de datos es la forma de almacenar datos en la memoria de la computadora para que pueda usarse de manera fácil y eficiente. Existen diferentes estructuras de datos utilizadas para el almacenamiento de datos. También se puede definir como un modelo matemático o lógico de una organización particular de elementos de datos. La … Continue reading «Operaciones comunes en varias estructuras de datos»

Cuente el número de árboles de búsqueda binarios presentes en un árbol binario

Dado un árbol binario, la tarea es contar el número de árboles binarios de búsqueda presentes en él. Ejemplos:   Aporte:  1 / \ 2 3 / \ / \ 4 5 6 7 Salida: 4 Aquí cada Node hoja representa un árbol de búsqueda binaria y hay un total de 4 Nodes. Aporte: 11 / … Continue reading «Cuente el número de árboles de búsqueda binarios presentes en un árbol binario»

Compruebe si dos secuencias de teclas dadas construyen los mismos BST

Dadas dos arrays que representan dos secuencias de claves que se utilizan para crear BST. Imagine que hacemos un árbol de búsqueda binaria (BST) de cada array. Necesitamos decir si dos BST serán idénticos o no sin construir el árbol.  Ejemplos:  Let the input arrays be a[] and b[] Example 1: a[] = {2, 4, … Continue reading «Compruebe si dos secuencias de teclas dadas construyen los mismos BST»

Mayor número menor o igual a N en BST (enfoque iterativo)

Tenemos un árbol de búsqueda binaria y un número N. Nuestra tarea es encontrar el mayor número en el árbol de búsqueda binaria que sea menor o igual a N. Imprime el valor del elemento si existe, de lo contrario imprime -1.   C++ // C++ code to find the largest value smaller // than or … Continue reading «Mayor número menor o igual a N en BST (enfoque iterativo)»

Experiencia de entrevista en OYO Rooms (en el campus)

Ronda 1: La ronda 1 fue por 200 puntos. 25 MCQ y 2 preguntas de codificación. Las MCQ se referían principalmente a la aptitud y algunas eran preguntas técnicas (problemas de salida de C++). Cada uno de los MCQs llevó 2 marcas. Una codificación fue un problema fácil (50 puntos) y la otra fue de … Continue reading «Experiencia de entrevista en OYO Rooms (en el campus)»

Aplicaciones de BST

Binary Search Tree , es una estructura de datos de árbol binario basada en Nodes que tiene las siguientes propiedades: El subárbol izquierdo de un Node contiene solo Nodes con claves menores que la clave del Node. El subárbol derecho de un Node contiene solo Nodes con claves mayores que la clave del Node. El … Continue reading «Aplicaciones de BST»

Experiencia de entrevista en Amazon | Juego 350 (para SDE I)

Ronda 1 (Ronda de codificación + MCQ): Plataforma: Hackerearth Máximo 0 subarreglo invertido Encuentra un tour que visite todas las estaciones Los casos de prueba fueron muy débiles y se aceptó cualquier solución de fuerza bruta. 20 MCQ basados ​​en OS, DBMS. Las preguntas eran muy similares a las presentes en Geeksquiz. Ronda 2 (Entrevista … Continue reading «Experiencia de entrevista en Amazon | Juego 350 (para SDE I)»

Algoritmo de Day-Stout-Warren para equilibrar el árbol de búsqueda binaria dado

 Dado un árbol de búsqueda binario (BST) desequilibrado, la tarea es convertirlo en un BST equilibrado en tiempo lineal y sin usar espacio auxiliar. Ejemplos: Entrada:               5                        / \                 … Continue reading «Algoritmo de Day-Stout-Warren para equilibrar el árbol de búsqueda binaria dado»

Árbol AVL | Juego 1 (inserción)

El árbol AVL es un árbol de búsqueda binaria (BST) autoequilibrado donde la diferencia entre las alturas de los subárboles izquierdo y derecho no puede ser más de uno para todos los Nodes. Un árbol de ejemplo que es un árbol AVL   C++ // C++ program to insert a node in AVL tree #include<bits/stdc++.h> using namespace … Continue reading «Árbol AVL | Juego 1 (inserción)»

Implementación de conjuntos sin contenedores STL de C++

Un Conjunto es una colección de elementos distintos. Los elementos no se pueden modificar una vez agregados. Hay varias operaciones asociadas con conjuntos, como unión, intersección, conjunto de potencia, producto cartesiano, diferencia de conjunto, complemento e igualdad. Métodos de conjunto:  add(data) – Agrega ‘datos’ al conjunto unionSet(s) – Devuelve la unión del conjunto con el … Continue reading «Implementación de conjuntos sin contenedores STL de C++»