Jump to content
GSForum - Segélyvonal

Permutáció


Recommended Posts

Posted

Egy olyan PHP script érdekelne engem, ami egy megadott szöveg permutációját készíti el.

Pl:

bemenet=abc

kimenet=abc,acb,bca,bac,cab,cba

 

Elõre is köszönöm a gyors válaszokat

 

Posted

Azt hiszem ez jó lesz:

<?php
  function getRandomStr($length, $seed)
  {
    for ($str = '', $i = 0; $i < $length; ++$i)
      $str .= $seed{rand(0, strlen($seed) - 1)};

    return $str;
  }
?>

Az oldalon, ahonnan néztem a függvény paramétereinek volt kezdõértéke. Nem értek a PHP-hoz, de mivel C alapú, így feltételezem, hogy ez nem szükséges. Ezért bátorkodtam kivenni. A "seed" paraméterbõl veszi a karaktereket, a "length" paraméter pedig megadja, hogy milyen hosszú legyen a generált string. Ha seed-nek a permutáladnó karaktersorozatot választod, length-nek pedig annak hosszát adod meg, akkor a függvény épp egy permutációt fog adni.

 

ui: h.arpad, ha ezt olvasod, akkor ez tulajdonképpen a programozásos topicban általam említett véletlen rendezés. Csak éppenséggel nem belsõ, hanem külsõ. Rájöttem, hogy ez így sokkal viccesebb és felesleges a belsõvel vacakolni. :)

Posted

Csak azt magyarázd el, hogy ebben a sorban mit kell csinálni, mert ez így PHP-ban nem hiszem, hogy mûködik (a for ciklus már más kérdés, de szerintem arra ráérünk) ;) :

$str .= $seed{rand(0, strlen($seed) - 1)};

@csanesz:

Úgy gondoltam érdemesebb itt megtárgyalni a kérdés "elméleti" részét (magát az algoritmust). Remélem nem gond. Ez már rég nem a webszerkesztésrõl szól. :) Calyd is erre a topicra utalt.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...