Solucionador de Sudoku

Solucionador de Sudoku 9x9 optimizado con backtracking y matrices de presencia para filas, columnas y cajas. Garantiza solución única.

31 ago 2025 • 4 min read • Q2BSTUDIO Team

Inteligencia-Artificial-

37. Sudoku Solver

Dificultad: Difícil

Temas: Arrays, Hash Table, Backtracking, Matrices

Escribe un programa que resuelva un Sudoku rellenando las celdas vacías. Una solución válida debe cumplir todas las reglas: 1 cada dígito del 1 al 9 aparece exactamente una vez en cada fila, 2 cada dígito del 1 al 9 aparece exactamente una vez en cada columna, 3 cada dígito del 1 al 9 aparece exactamente una vez en cada uno de los 9 subcuadrantes de 3x3. El carácter punto . indica celda vacía.

Ejemplo 1

Entrada tablero 9x9 con puntos en las celdas vacías como en el clásico ejemplo de LeetCode 37. Salida tablero resuelto único en el que se completan todos los dígitos del 1 al 9 cumpliendo las reglas anteriores.

Ejemplo 2

Entrada tablero casi vacío con algunas pistas dispersas. Salida la misma solución canónica del Sudoku estándar válida y única.

Restricciones

El tablero es de 9x9, cada casilla contiene un dígito del 1 al 9 o un punto. Se garantiza que el tablero de entrada tiene una única solución.

Solución optimizada

La clave para acelerar el solver es evitar escanear filas, columnas y cajas 3x3 en cada intento. En su lugar, mantenemos tres estructuras de presencia que permiten validar en tiempo O(1):

1 Inicialización crear tres matrices booleanas o conjuntos para filas columnas y cajas de tamaño 9x9 filas[i][d], columnas[j][d], cajas[b][d], donde d representa el dígito 1..9 y b es el índice de caja calculado como i div 3 por 3 mas j div 3

2 Preprocesamiento recorrer el tablero inicial y para cada celda ya rellena marcar el dígito correspondiente en filas, columnas y cajas

3 Backtracking con poda elegir la siguiente celda vacía de forma secuencial o aplicando una heurística como mínima cantidad de candidatos. Para cada dígito de 1 a 9 comprobar en O(1) si no está usado en su fila, columna ni caja. Si es válido colocar el dígito, actualizar las tres estructuras y continuar con la siguiente celda. Si más adelante se produce un bloqueo deshacer el movimiento y probar el siguiente candidato

4 Recursión y terminación cuando todas las celdas estén completas devolver verdadero. La garantía de unicidad asegura que el recorrido terminará en la única solución

Esquema en PHP de alto nivel sin detalles de sintaxis

funcion resolverSudoku tablero por referencia inicializar filas, columnas, cajas desde el tablero llamar a backtrack indice 0

funcion backtrack tablero, indice, filas, columnas, cajas si indice igual a 81 devolver verdadero calcular i igual indice div 9 y j igual indice mod 9 si tablero i j no es punto avanzar con backtrack indice mas 1 para d de 1 a 9 si filas i d es falso y columnas j d es falso y cajas cajaDe i j d es falso colocar d, marcar en filas columnas cajas si backtrack indice mas 1 devolver verdadero desmarcar y vaciar celda si ningún d funciona devolver falso

Este enfoque reduce drásticamente el coste de verificación y hace al solver lo bastante eficiente para resolver al instante los tableros típicos, manteniendo claridad y mantenibilidad del código. La lógica se puede portar de forma idéntica a otros lenguajes como Java, Python o C.

Notas prácticas

• Calcular el índice de caja como b igual a i div 3 por 3 mas j div 3 • Para minimizar llamadas recursivas, selecciona siempre la celda con menos candidatos • Mantén las estructuras de presencia sincronizadas al hacer y deshacer movimientos para evitar inconsistencias

Acerca de Q2BSTUDIO

En Q2BSTUDIO construimos soluciones inteligentes de extremo a extremo que combinan aplicaciones a medida, software a medida y algoritmos avanzados como este solver de Sudoku, integrando inteligencia artificial, agentes IA y automatización para resolver problemas reales de negocio. Si buscas crear un producto robusto y escalable, descubre nuestro enfoque de software a medida y cómo aceleramos el time to market con arquitectura modular y pruebas automatizadas.

Nuestro equipo de especialistas en ia para empresas diseña y despliega modelos de visión, lenguaje y decisiones, integrados con tus sistemas y datos. Explora cómo aplicamos técnicas de búsqueda, optimización y aprendizaje para casos reales en industria, retail y finanzas en nuestra página de inteligencia artificial.

Además, reforzamos tus operaciones con ciberseguridad de alto nivel, servicios cloud aws y azure, orquestación de microservicios, servicios inteligencia de negocio y visualización con power bi, y automatización de procesos de punta a punta. Nuestra propuesta cubre desde consultoría y diseño hasta desarrollo, despliegue y observabilidad continua.

Palabras clave para tu estrategia digital aplicaciones a medida, software a medida, inteligencia artificial, ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio, ia para empresas, agentes IA, power bi.

¿Listo para pasar de la teoría a la práctica con soluciones que realmente impactan tu cuenta de resultados Contáctanos y te ayudamos a convertir algoritmos, datos y cloud en ventajas competitivas sostenibles.

A BREAK?

Play for a moment before you go

OUR SERVICES

How we can help you

Artificial intelligence

AI agents, chatbots, and intelligent assistants that automate tasks and serve your customers 24/7 to improve the efficiency of your business.

More info

Software Development

Web, mobile, and desktop applications, intranets, e-commerce, SaaS, and management platforms designed for your company's specific needs.

More info

Cloud services

Migration, infrastructure, managed hosting, high availability, and security on Microsoft Azure and Amazon Web Services to help your business scale without limits.

More info

Cybersecurity and pentesting

Security audits, penetration testing and protection of applications, data and infrastructure on-premise and cloud, with ethical hacking and regulatory compliance.

More info

Business Intelligence

Dashboards and data analysis with Power BI: we integrate your sources, design dashboards and KPIs and turn your data into decisions.

More info

Process automation

We automate repetitive tasks and connect your applications with n8n, Power Automate, Make, and RPA, eliminating manual work and increasing productivity.

More info

Training for Companies

We train your teams in technology with criteria: web development, databases, Git, best practices and security, automation with n8n, artificial intelligence for companies and creation of AI solutions with Azure AI Foundry.

More info

Code Auditing

We audit the code that you, your team or an AI create: we tell you what is good and what to improve, we secure it and make it ready for production, web or app.

More info

AI Image Generation

We create for you the images that your business needs with artificial intelligence: product, networks, advertising, illustration and avatars. You tell us what you want and we deliver it ready to use.

More info

AI Video Generation

We create videos with artificial intelligence for you: promotional, networking, virtual presenters, dubbing and animations. You tell us the idea and we will deliver it assembled and ready to publish.

More info

AI Conversational Avatars

We create conversational avatars with AI – digital humans with a face and voice – that serve your customers and teams with the knowledge of your company, on your website, interactive monitors, WhatsApp or Teams.

More info

Online Marketing and AI

Google Ads, Meta Ads, LinkedIn Ads and AI Engine Positioning (GEO/AEO): we attract customers and make your brand appear where they search for you, also on ChatGPT, Gemini and Perplexity.

More info

Do you have a project in mind?

Tell us your vision and we'll turn it into a software solution. Whatever the scope, we make your idea real.

Live Chat