Velocity Reviews (http://www.velocityreviews.com/forums/index.php)
-   Perl Misc (http://www.velocityreviews.com/forums/f67-perl-misc.html)
-   -   Circular lists - 26 letters (http://www.velocityreviews.com/forums/t909424-circular-lists-26-letters.html)

 sln@netherlands.com 01-12-2009 08:35 PM

Circular lists - 26 letters

I need to permute the 26,25,24,... letters of the alphabet.
How many words can I make with that? Will it take much memory?
How much ram do I need, how long will it take?
Do I need circular lists?

sln

 smallpond 01-12-2009 10:26 PM

Re: Circular lists - 26 letters

On Jan 12, 3:35 pm, s...@netherlands.com wrote:
> I need to permute the 26,25,24,... letters of the alphabet.
> How many words can I make with that? Will it take much memory?
> How much ram do I need, how long will it take?
> Do I need circular lists?
>
> sln

See: Math::Counting::bperm

 Jim Gibson 01-12-2009 10:56 PM

Re: Circular lists - 26 letters

In article <t5anm4d27tdcj3cdm438a1antuesh3pqvt@4ax.com>,
<sln@netherlands.com> wrote:

> I need to permute the 26,25,24,... letters of the alphabet.

Which alphabet? There are 26 letters in the English alphabet. You can
get an alphabet consisting of 25 letters by eliminating one letter from
the English alphabet. There are 26 ways to do that. You can eliminate 2
letters to get a 24-letter alphabet; there are 26*25 ways to do that.

Given N distinct letters, there are N! permutations formed by selecting
N letters from the set in order. N! = N * (N-1) * (N-2) * ... * 3 * 2 *
1 (but you knew that).

Given N distinct letters, there are N!/(N-M)! different ways to select
M letters in order from N distinct letters (M < N).

<http://en.wikipedia.org/wiki/Permutation>

> How many words can I make with that?

Every word in the English language that does not have repeated letters,
and then some! What is your definition of a "word".

> Will it take much memory?

Not if you generate the permutations one-at-a-time. See, for example,
'perldoc -q permute'

> How much ram do I need,

Not much (see above).

> how long will it take?

A very long time. Enough time to generate

26! + 26! + (26!/2!) + (26!/3!) + (26!/4!) + . . . + (26*25) + 26 + 1

permutations ( or thereabouts -- my math might be off a little). Since
26! is 4.0329E26, you will need about 10**13 years assuming you can
generate and process 1,000,000 permutations per second.

> Do I need circular lists?

No.

--
Jim Gibson

 sln@netherlands.com 01-13-2009 12:05 AM

Re: Circular lists - 26 letters

On Mon, 12 Jan 2009 14:56:27 -0800, Jim Gibson <jimsgibson@gmail.com> wrote:

>In article <t5anm4d27tdcj3cdm438a1antuesh3pqvt@4ax.com>,
><sln@netherlands.com> wrote:
>
>> I need to permute the 26,25,24,... letters of the alphabet.

>
>Which alphabet? There are 26 letters in the English alphabet. You can
>get an alphabet consisting of 25 letters by eliminating one letter from
>the English alphabet. There are 26 ways to do that. You can eliminate 2
>letters to get a 24-letter alphabet; there are 26*25 ways to do that.
>
>Given N distinct letters, there are N! permutations formed by selecting
>N letters from the set in order. N! = N * (N-1) * (N-2) * ... * 3 * 2 *
>1 (but you knew that).
>
>Given N distinct letters, there are N!/(N-M)! different ways to select
>M letters in order from N distinct letters (M < N).
>
><http://en.wikipedia.org/wiki/Permutation>
>
>> How many words can I make with that?

>
>Every word in the English language that does not have repeated letters,
>and then some! What is your definition of a "word".
>
>> Will it take much memory?

>
>Not if you generate the permutations one-at-a-time. See, for example,
>'perldoc -q permute'
>
>> How much ram do I need,

>
>Not much (see above).
>
>> how long will it take?

>
>A very long time. Enough time to generate
>
>26! + 26! + (26!/2!) + (26!/3!) + (26!/4!) + . . . + (26*25) + 26 + 1
>
>permutations ( or thereabouts -- my math might be off a little). Since
>26! is 4.0329E26, you will need about 10**13 years assuming you can
>generate and process 1,000,000 permutations per second.
>
>> Do I need circular lists?

>
>No.

Total utteral hogwash, to even reply is ignorance personified!!

sln

 All times are GMT. The time now is 12:39 PM.