csanesz Posted July 5, 2007 Posted July 5, 2007 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
Calyd Posted July 6, 2007 Posted July 6, 2007 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.
h.arpad Posted July 6, 2007 Posted July 6, 2007 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.
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now