Chciałem więc stworzyć jakiś algorytm, który zmieni litery wewnątrz sznurka w int, więc po prostu powiedzmy, jeśli ciąg jest ABCD, wyjście będzie 1234, to upewni się, że to samo ...

-1
Jakub Oravec 15 marzec 2021, 17:57

2 odpowiedzi

Najlepsza odpowiedź

Odpowiadanie na rzeczywisty problem

Mówisz, że wszystko, czego faktycznie chcesz, to losowe nasiona oparte na wejściu sznurka.

To nie może być łatwiejsze! Jeśli potrzebujesz tylko "nasiona", który jest zawsze taki sam dla tych samych wejść ciągów, możesz również użyć tylko użycia string.GetHashCode();

var randomSeed = SeedS.GetHashCode();

Odpowiadając na tytuł

Jeśli naprawdę potrzebujesz niestandardowej mapy, można użyć

derHugo 15 marzec 2021, 15:42

Możesz użyć czegoś takiego:

// Create your dictionary here.
var dictionary = new Dictionary<char, int>();

// The string that will be converted.
string str = "Hello";

foreach (char character in str)
{
    if (dictionary.ContainsKey(character))
    {
        int value = dictionary[character];

        // Use your value here.
    }
}

Słowniki oferują funkcje, aby znaleźć wartości przez ich klucze w czasie mniej więcej o (1). Itera nad nimi trwa dłużej, a zatem pokonałby cel używania słownika.

0
Blu3Souls 15 marzec 2021, 15:13