Trabalhando com permutações em ordem lexicográfica crescente

Digamos que com os inteiros de 1 a N escrevemos todas as possíveis permutações em ordem crescente. Aprenda a calcular a posição de uma dada permutação e a permutação de uma dada posição! Ideias importantes em problemas de matemática e computação

[ Hits: 2.311 ]

Por: Vitor Marques Rodrigues em 24/11/2020


Introdução



Suponha que tenhamos a seguinte coleção de inteiros {1,2,3,4}. Podemos formar permutações com esses números(com todos os elementos distintos). Por exemplo, podemos formar os números 1234,3241,4321 e vários outros números, há 24 opções possíveis. Porém, quero colocar essas permutações em ordem crescente, ou seja, os números formados devem estar em ordem crescente. Começando do início, [1,2,3,4] é a primeira, pois é a menor possível, depois vem a [1,2,4,3], depois [1,3,2,4] e assim por diante.
					Permutação ------------ Posição
					[1,2,3,4] ------------------  1
					[1,2,4,3] ------------------  2
					[1,3,2,4] ------------------  3
					[1,3,4,2] ------------------  4
					[1,4,2,3] ------------------  5
					[1,4,3,2] ------------------  6
					[2,1,3,4] ------------------  7
					[2,1,4,3] ------------------  8
					     ...				...

Pegou a ideia?

Isso é o que chamamos de colocar as permutações em ordem lexicográfica crescente. Diante disso há algumas perguntas que podemos fazer:
  • Qual é a posição da permutação [4,2,3,1]?
  • Qual permutação ocupa a 16a posição?

Nesse artigo você aprenderá a responder essa perguntas! Porém primeiro é necessário aprender o básico de análise combinatória.

    Próxima página

Páginas do artigo
   1. Introdução
   2. Básico de Análise Combinatória
   3. Qual a posição de uma dada permutação?
   4. Qual a permutação de uma dada posição?
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Clicador automático de Tinder com Python

PEP 8 - Guia de estilo para código Python

Python: automatizando a extração de informações na web com expressões regulares

OAK: Câmera Open Source de Visão Computacional com AI

Port Scanner com Python

  
Comentários
[1] Comentário enviado por mauricio123 em 25/11/2020 - 13:03h


Ficou top.

___________________________________________________________
[code]Conhecimento não se Leva para o Túmulo.
https://github.com/MauricioFerrari-NovaTrento [/code]


Contribuir com comentário