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: 7.238 ]

Por: Perfil removido 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

Uma geral pela configuração pós-instalação do Slackware

Dynamic libraries com libtool

Ubuntu 14.04 no AD com CiD

Construindo um portscanner TCP com Python

1º Fórum da Internet no Brasil

Leitura recomendada

Splash Screen para Inkscape

Python - Usando requests anônimos através da rede Tor

Criando Speed Test com Python

Criando um leitor de RSS com Python

Construindo um portscanner TCP com Python

  
Comentários
[1] Comentário enviado por maurixnovatrento 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




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts