Convierta un árbol binario en una lista doblemente enlazada en forma de espiral

Dado un árbol binario, conviértalo en una lista doblemente enlazada donde los Nodes se representan en forma de espiral. El puntero izquierdo del Node del árbol binario debería actuar como un Node anterior para la DLL creada y el puntero derecho debería actuar como el siguiente Node.  La solución no debería asignar memoria adicional para … Continue reading «Convierta un árbol binario en una lista doblemente enlazada en forma de espiral»

Imprima elementos de array en diagonal en forma de espiral

Dada una array arr[][] de dimensiones N * M y un número entero K , la tarea es imprimir todos los elementos de la array comenzando desde el elemento superior izquierdo hasta K en diagonal en forma de espiral. Ejemplos: Entrada: N=5, M=6, K=15, array[][]={{1, 2, 3, 4, 5, 6},            … Continue reading «Imprima elementos de array en diagonal en forma de espiral»

Imprimir una array dada en forma de espiral – Part 1

Dada una array 2D, imprímala en forma de espiral. Vea los siguientes ejemplos. Ejemplos:  C++ #include <bits/stdc++.h> using namespace std;    vector<int> spiralOrder(vector<vector<int> >& matrix) {     int m = matrix.size(), n = matrix[0].size();     vector<int> ans;        if (m == 0)         return ans;        vector<vector<bool> > seen(m, vector<bool>(n, false));     int dr[] = { 0, 1, 0, … Continue reading «Imprimir una array dada en forma de espiral – Part 1»

Encuentra las coordenadas de un número primo en una espiral principal

Introducción  La espiral de Ulam es una representación gráfica del conjunto de números primos, ideada por el matemático Stanislaw Ulam. Se construye escribiendo los números enteros positivos en una espiral cuadrada y marcando especialmente los números primos. Puedes leer más sobre esto aquí. Pero vamos a calcular en la versión alternativa de esta espiral donde … Continue reading «Encuentra las coordenadas de un número primo en una espiral principal»

Recorrido de orden de nivel en forma de espiral usando stack y multimap

Dado un árbol binario de N Nodes, la tarea es imprimir el recorrido del orden de niveles en forma de espiral. En forma de espiral, los Nodes del primer y segundo nivel del árbol se imprimen normalmente (de izquierda a derecha), después de lo cual los Nodes de los niveles alternos se imprimen en orden … Continue reading «Recorrido de orden de nivel en forma de espiral usando stack y multimap»

Imprimir elementos de contorno de una array dada en el sentido de las agujas del reloj

Dada una array arr[][] de tamaño N * M , la tarea es imprimir los elementos de contorno de la array dada en el sentido de las agujas del reloj. Ejemplos: Entrada: arr[][] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9} } Salida: 1 2 3 6 9 8 7 4 Explicación: Elementos … Continue reading «Imprimir elementos de contorno de una array dada en el sentido de las agujas del reloj»

Programa recursivo para imprimir Nodes extremos de cada nivel del árbol binario en orden alternativo

Dado un árbol binario, la tarea es imprimir los Nodes de las esquinas extremas de cada nivel pero en orden alterno. Ejemplos:   Input : 1 / \ 2 3 / / \ 4 5 6 / / \ 7 8 9 Output : 1 2 6 7 Print the rightmost node at 1st level: 1 … Continue reading «Programa recursivo para imprimir Nodes extremos de cada nivel del árbol binario en orden alternativo»

Recorrido en espiral inverso en el sentido de las agujas del reloj de un árbol binario

Dado un árbol binario. La tarea es imprimir el recorrido circular en espiral inversa en el sentido de las agujas del reloj del árbol binario dado. El recorrido inverso en el sentido de las agujas del reloj significa atravesar el árbol en el sentido de las agujas del reloj en espiral, comenzando desde la parte … Continue reading «Recorrido en espiral inverso en el sentido de las agujas del reloj de un árbol binario»

Cree una array espiral de tamaño N * M a partir de una array dada

Dados dos valores M y N , llene una array de tamaño ‘ M * N ‘ en forma de espiral (o circular) (en el sentido de las agujas del reloj) con elementos de array dados. Ejemplos:   Entrada : M = 4, N = 4, arr = [1 2 3 4 5 6 7 … Continue reading «Cree una array espiral de tamaño N * M a partir de una array dada»