Twoje PC  
Zarejestruj się na Twoje PC
TwojePC.pl | PC | Komputery, nowe technologie, recenzje, testy
B O A R D
   » Board
 » Zadaj pytanie
 » Archiwum
 » Szukaj
 » Stylizacja

 
M E N U
  0
 » Nowości
0
 » Archiwum
0
 » Recenzje / Testy
0
 » Board
0
 » Rejestracja
0
0
 
Szukaj @ TwojePC
 

w Newsach i na Boardzie
 
OBECNI NA TPC
 
 » Promilus 05:48
 » @GUTEK@ 05:27
 » alien1 05:19
 » piszczyk 04:17
 » Shark20 03:52
 » Martens 03:45
 » cVas 02:53
 » mo2 02:43
 » rzymo 02:25
 » mirek190 02:21
 » Visar 02:04
 » MARC 01:52

 Dzisiaj przeczytano
 41144 postów,
 wczoraj 25974

 Szybkie ładowanie
 jest:
włączone.

 
ccc
TwojePC.pl © 2001 - 2024
A R C H I W A L N A   W I A D O M O Ś Ć
    

[algorytm] Jak generować krótkie, niepowtarzalne ciągi znaków? , kubazzz 6/10/09 16:29
Np 6 znakowy?
Chodzi o oznaczenie artykułu w bazie.
Coś jak mają filmy na Jewtube, linki na tinyurl, itd.
Do dłuższych ciągów można wziąć np tytul artykulu + time() i zrobić jakiegoś popularnego hash'a i ładnie wygląda. Ale to dosyć długie ciągi znaków.

SM-S908

  1. na 6 znakach , Deus ex machine 6/10/09 16:36
    chcesz niepowtarzalne? .) wez normalne md5 z nazwy + microsekundy i sie nie patyczkuj.

    "Uti non Abuti"

    1. noooo jak masz 6 pozycji i 34 możliwe znaki , kubazzz 6/10/09 17:02
      to jest sporo możliwych permutacji - 968 330 880, wystarczy spokojnie.

      SM-S908

  2. w javie... , xmac 6/10/09 16:39
    moze byc np. tak

    private static int rand(int lo, int hi) {
    int n = hi - lo + 1;
    int i = rn.nextInt() % n;
    if (i < 0)
    i = -i;
    return lo + i;
    }


    private static String randomString(int lo, int hi) {
    int n = rand(lo, hi);
    byte b[] = new byte[n];
    for (int i = 0; i < n; i++)
    b[i] = (byte)rand('a', 'z');
    return new String(b, 0);
    }


    albo korzystajac z apache commons - RandomStringUtils.random

    a w php np. tak:

    function generatePassword ($length = 8)
    {

    // start with a blank password
    $password = "";

    // define possible characters
    $possible = "0123456789bcdfghjkmnpqrstvwxyz";

    // set up a counter
    $i = 0;

    // add random characters to $password until $length is reached
    while ($i < $length) {

    // pick a random character from the possible ones
    $char = substr($possible, mt_rand(0, strlen($possible)-1), 1);

    // we don't want this character if it's already in the password
    if (!strstr($password, $char)) {
    $password .= $char;
    $i++;
    }

    }

    // done!
    return $password;

    }

    dual&mobile power
    XMAC

    1. jak znam (moje) życie , kubazzz 6/10/09 17:03
      wylosują mi się dwa takie same dosyć szybko;)

      SM-S908

      1. o lol :) , Wedrowiec 6/10/09 17:05
        rob hasha, tnij do 6 znakow, pole unique i jak zworci error to generuj ponownie :D

        "Widziałem podręczniki
        Gdzie jest czarno na białym
        Że jesteście po**bani"

        1. hmm , kubazzz 6/10/09 18:32
          a crc32?

          SM-S908

    
All rights reserved ® Copyright and Design 2001-2024, TwojePC.PL